Un esempio di come leggere gli item di una lista SharePoint 2013 tramite il JavaScript Object Model:

JavaScript

//http://www.sgart.it

function listLoad(objId) {
  //ricavo il contesto corretne
  var ctx =  SP.ClientContext.get_current();

  //setto la lista da leggere
  var oList = ctx.get_web().get_lists().getByTitle('MiaLista');

  var camlQuery = new SP.CamlQuery();

  //imposto la query e l'ordinamento
  camlQuery.set_viewXml( '<View><Query>' +
    '<OrderBy><FieldRef Name="Date" Ascending="True"></FieldRef></OrderBy>' +
    '<Where><Geq><FieldRef Name=\'ContentType\'/><Value Type=\'Text\'>News</Value></Geq></Where>' +
    '</Query><RowLimit>3</RowLimit></View>' );
  var items = oList.getItems(camlQuery);

  //preparo l'oggetto per la lettura e scelgo i campi da caricare
  ctx.load(items, "Include(Id,Title,FileRef)");

  //eseguo la query
  ctx.executeQueryAsync(
    function (sender, args) { //success
      var itemEnumerator = items.getEnumerator();
      var s = "";
      while (itemEnumerator.moveNext()) {
        var oItem = itemEnumerator.get_current();
        //leggo i valori dell'item corrente
        var title = oItem.get_item('Title');
        var comments = oItem.get_item('Comments');
        var url =  oItem.get_item('FileRef');

        //costruisco l'html
        s += "<li><a title=\"\" href=\"" + url + "\">" + title + "</a></li>";
      }

      //trovo l'oggetto nel DOM
      var div = document.getElementById(objId);
      //imposto il conteuto da visualizzare
      div.innerHTML = "<ul>" + s + "</ul>";
    },
    function (sender, args) { // gestione errore di comunicazione
      var div = document.getElementById(objId);
      div.innerHtml = "<p>" + args.get_message() + " | " + args.get_stackTrace() + "</p>";
    }
  ); 
}

Per utilizzarlo inserisci un elemento html in pagina, come ad esempio:

HTML

<div id="sgart-list-item">wait ...</div>
ed invoca il caricamento degli item al completamento del caricamento della pagina:

JavaScript

function sgartListLoad(){
  listLoad("sgart-list-item"); 
}

ExecuteOrDelayUntilScriptLoaded(sgartListLoad, "SP.js");
Questo codice può essere usato, ad esempio, inserendolo in una Content Editor Web Part.
Tags:
Client Object Model10 JavaScript184 JSOM2 SharePoint498 SharePoint 2010224 SharePoint 2013137 SharePoint Online75
Potrebbe interessarti anche: