2011-02-08 55 views
2

hi 如何使用ajax从javascript访问sharepoint列表? 我每次都得到404错误。使用javascript访问sharepoint列表

 var d ="<?xml version=\"1.0\" encoding=\"utf-8\<soap:Envelope xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" xmlns:soap=\"http://schemas.xmlsoap.org/soap/envelope/\"> 
<soap:Body><GetListItems xmlns=\"http://schemas.microsoft.com/sharepoint/soap/\"> 
<listName>TEST</listName> 
<queryOptions></queryOptions> 
<query><Query><Where><Eq><FieldRef Name=\"Title\"/><Value Type=\"Text\">title</Value></Eq></Where></Query></query> 
</GetListItems> 
</soap:Body></soap:Envelope>"; 

有人可以检查肥皂信封是否正确?

+0

使用单引号(```)来包含该字符串将节省您必须转义所有内部引号的麻烦。 – 2011-02-08 19:17:39

回答

4

这将是easyer使用库,而不是自己锻造肥皂信封。尝试SPServices,一个用于SharePoint Web服务的jQuery库。

然后你只是做something like

<script type="text/javascript" src="filelink/jquery-1.4.2.min.js"></script> 
<script type="text/javascript" src="filelink/jquery.SPServices-0.5.4.min.js"></script> 
<script language="javascript" type="text/javascript"> 

$(document).ready(function() { 
    $().SPServices({ 
    operation: "GetListItems", 
    async: false, 
    listName: "Announcements", 
    CAMLViewFields: "<ViewFields><FieldRef Name='Title' /></ViewFields>", 
    completefunc: function (xData, Status) { 
     $(xData.responseXML).find("[nodeName='z:row']").each(function() { 
     var liHtml = "<li>" + $(this).attr("ows_Title") + "</li>"; 
     $("#tasksUL").append(liHtml); 
     }); 
    } 
    }); 
}); 
</script> 
<ul id="tasksUL"/> 

不错!

+0

我同意。 SPServices非常易于使用。这应该被标记为答案。因为它是JQ,它也允许其他有趣的东西,如自动完成等 – trgraglia 2011-03-08 09:32:13

相关问题