sharepoint字段值显示未定义

时间:2014-11-11 17:30:06

标签: javascript sharepoint

我正在学习sharepoint 2013.我正在尝试在Web部分中显示一些数据。以下是我的代码

<script unselectable="on">
window.onload = function() {
  myFunction();
};
function myFunction() {
console.log("test");
$().SPServices
({
operation: "GetListItems",
async: false, 
webURL: $().SPServices.SPGetCurrentSite(),
listName: "Share Point List",
CAMLQuery: "<Query><OrderBy><FieldRef Name='ID' Ascending='True' /></OrderBy></Query>", 
completefunc: function (xData, Status)
{
$(xData.responseXML).SPFilterNode("z:row").each(function() 
{
console.log(firstName);
var firstName = $(this).attr("ows_First_Name");
var lastName = $(this).attr("ows_Last_Name");
var gender = $(this).attr("ows_Gender");
var dateOfBirth = $(this).attr("ows_Date_of_Birth");
var email = $(this).attr("ows_Email");
var city = $(this).attr("ows_City");
var country = $(this).attr("ows_Country");
console.log(gender);
$("#myDataTable").append("<tr align='right'>" +
"<td>"+firstName+"</td>" +
"<td>"+lastName+"</td>" +
"<td>"+gender+"</td>" +
"<td>"+dateOfBirth+"</td>" +
"<td>"+email+"</td>" +
"<td>"+city+"</td>" +
"<td>"+country+"</td>" +  "</tr>"); 
});
}
});
}
</script>

对于具有单一名称的字段名称,例如Email,Gender,City,我获得正确的值,但对于具有First Name,Last Name等空格的字段名称,我得到未定义的值。这应该是什么正确的语法?

2 个答案:

答案 0 :(得分:0)

兄弟......

使用REST功能,使用ajax读取列表的整个项目,并使用.indexof&lt; 0进行比较,以检查是否已存在该名称。

首先使用ajax和其余链接来阅读所有项目。 Crei包含所有名称的列表,然后执行一个遍历整个列表,内部是div camparando names.indexOf中的追加if if(names [i])&lt; 0&amp;&amp; names.indexOf(names [i])

答案 1 :(得分:0)

REST over SOAP(SP服务)的问题是REST只能在列表所在的站点上使用。如果要从另一个子网站或父网站上的列表中获取数据,则只能使用SOAP执行此操作。