2016-05-03 9 views
0

Im Allgemeinen erhalten wir Daten vom SharePoint-Serverobjektmodell. Aber ich muss Daten aus der SharePoint-Liste mit JSOM sammeln.Wie erhalte ich Daten aus der SharePoint-Liste mit JSOM?

Meine Forderung ist unter:

Es gibt eine Liste Liste1 mit 3 Spalten ID, Titel, Status

Ich brauche all diese Daten zu erhalten genannt ist, wo-Status 1 und Titel = „My gegebenen Titel“

Bitte geben Sie die Lösung mit JSOM an.

Antwort

1

Die Dokumentation here erklärt das JavaScript Object Model ziemlich gut.

Im Wesentlichen müssen Sie ein ClientContext Objekt erstellen und verwenden, um anzugeben, welche Anweisungen Sie ausführen möchten. Sie geben ClientContext.load() ein, um anzugeben, welche Objekte mit abgerufenen Informationen gefüllt werden sollen, und verwenden dann ClientContext.executeQueryAsync(), um alle in der Warteschlange befindlichen Anweisungen auszuführen. Im Rahmen der Callback-Funktionen, die Sie an executeQueryAsync übergeben, können Sie auf die Ergebnisse Ihrer Abfrage zugreifen.

Das folgende Beispiel zeigt den typischen Ansatz.

<script> 
ExecuteOrDelayUntilScriptLoaded(getListItems,"sp.js"); 
function getListItems(){ 
    var clientContext = new SP.ClientContext(); 
    var list = clientContext.get_web().get_lists().getByTitle("List1"); 
    var camlQuery = new SP.CamlQuery(); 
    camlQuery.set_viewXml(/* build a CAML query to retrieve your items */ 
     "<View><Query>" + 
     "<Where>" + 
      "<And>" + 
       "<Eq><FieldRef Name=\"Status\"/><Value Type=\"Text\">1</Value></Eq>" + 
       "<Eq><FieldRef Name=\"Title\"/><Value Type=\"Text\">My given title</Value></Eq>" + 
      "</And>"+ 
     "</Where>" + 
     "</Query></View>"); 
    var items = list.getItems(camlQuery); 
    clientContext.load(items); 
    clientContext.executeQueryAsync(function(){ 
     var itemArray = []; 
     var itemEnumerator = items.getEnumerator(); 
     while(itemEnumerator.moveNext()){ 
      /* loop through all your results */ 
      var item = itemEnumerator.get_current(); 
      var id = item.get_item("ID"); 
      var title = item.get_item("Title"); 
      itemArray.push(id + ": " + title); 
     } 
     alert("ID: Title\n"+itemArray.join("\n")); 
    },function(sender,args){alert(args.get_message());}); 
} 
</script>