我正在使用SharePoint 2013并尝试按查找选择字段过滤列表。
在搜索并尝试各种插入查询XML的方法之后,我有以下代码:
function getListItems(listName, viewTitle){
var myClientContext = new SP.ClientContext.get_current();
var oWebsite = myClientContext.get_web();
var oList = oWebsite.get_lists().getByTitle(listName);
var camlQuery = new SP.CamlQuery();
var q = '<View><Query><Where>' +
'<Eq>' +
'<FieldRef Name="SignLocationsList" LookupId="true" />' +
'<Value Type="Lookup">HQ</Value>' +
'</Eq>' +
'</Where></Query></View>';
camlQuery.set_viewXML(q);
// No specific query at this time
this.collListItem = oList.getItems(camlQuery);
myClientContext.load(collListItem,'Include(Id,Title,Posting_x0020_Date_x0020_Planned,Removal_x0020_Date_x0020_Planned,SignRemoved,AttachmentFiles,SignLocationsList');
myClientContext.executeQueryAsync(getItemsSuccess, getItemsFail);
}
但是,我仍然得到错误:
错误:对象不支持属性或方法'set_viewXML'
在不添加查询部分的情况下,我能够看到整个列表并以我需要的方式显示它。只有在尝试添加查询XML时才会出现错误。
答案 0 :(得分:0)
由于SP.CamlQuery对象包含SP.CamlQuery.set_viewXml method但不包含set_viewXML
,因此会发生此错误。
替换行:
camlQuery.set_viewXML(q);
使用:
camlQuery.set_viewXml(q);