Domanda

This is my code, but i don't know which is the field for url. Can I get url with a different way?

var f = "<ViewFields>"+
                '<FieldRef Name="Title"/>'+
                '<FieldRef Name="LinkFilenameNoMenu"/>'+
                '<FieldRef Name="Created"/>'+
            "</ViewFields>";
È stato utile?

Soluzione

It is very easy, but It was hard to find.

var f = "<ViewFields>"+
                '<FieldRef Name="ID"/>'+
                '<FieldRef Name="Title"/>'+
                '<FieldRef Name="LinkFilenameNoMenu"/>'+
                '<FieldRef Name="Created"/>'+
                '<FieldRef Name="EncodedAbsUrl"/>'+
            "</ViewFields>";
$().SPServices({
operation: "GetListItems",
async: false,
listName: list,
CAMLViewFields: f,
CAMLLimit: l,
CAMLQuery: q, 



completefunc: function (xData, Status) {

  $(xData.responseXML).SPFilterNode("z:row").each(function() {



      var url = $(this).attr("ows_EncodedAbsUrl")

    });
  }
});

It works in C# code, you can use the ows_EncodedAbsUrl metadata value:

using (SPSite site = new SPSite(webUrl))
{
   using (SPWeb web = site.OpenWeb())
   {
       SPList list = web.Lists["Shared Documents"];
       SPListItem item = list.Items[0];
       string itemUrl = item["ows_EncodedAbsUrl"].ToString();
   }
}
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top