0
我有一个简单的JavaScript,它引发了以下错误:SCRIPT5022:集合尚未初始化。它没有被请求或请求未被执行
SCRIPT5022:该集合尚未初始化。它没有被请求或者请求没有被执行。可能需要明确要求。
我在内容编辑器WebPart的O365下使用它。我有一个名为“myTestList”的列表,其中有几个项目和一个名为“points”的列。我只想检索我创建的项目并将点数显示在div内。这是我的代码。
<div id="myPoints" style="font-size: 50px;">0</div>
<script language="javascript" type="text/javascript">
SP.SOD.executeOrDelayUntilScriptLoaded(retrieveMyItems, "sp.js");
function retrieveMyItems() {
var clientContext = new SP.ClientContext.get_current();
var oList = clientContext.get_web().get_lists().getByTitle('myTestList');
var camlQuery = new SP.CamlQuery();
camlQuery.set_viewXml("<View><Query><Where><Eq><FieldRef Name='Author' /><Value Type='Integer'><UserID /></Value></Eq></Where></Query></View>");
this.collListItem = oList.getItems(camlQuery);
clientContext.load(collListItem, 'Include(points)');
clientContext.executeQueryAsync(Function.createDelegate(this, this.onMyItemsQuerySucceeded), Function.createDelegate(this, this.onMyItemsQueryFailed));
}
function onMyItemsQuerySucceeded(sender, args) {
var listItemInfo = 0;
var listItemEnumerator = collListItem.getEnumerator();
while (listItemEnumerator.moveNext()) {
var oListItem = listItemEnumerator.get_current();
listItemInfo = listItemInfo + parseInt(oListItem.get_item('points'));
}
var div = document.getElementById("myPoints");
div.innerHTML = listItemInfo;
}
function onMyItemsQueryFailed(sender, args) {
alert('Request failed. ' + args.get_message() + '\n' + args.get_stackTrace());
}
</script>
这里有什么错?
更新 解决!该set_viewXml
camlQuery.set_viewXml("<View><Query><Where><Eq><FieldRef Name='Author' /><Value Type='Integer'><UserID Type='Integer'/></Value></Eq></Query></Where></View>");
我不得不添加。
有没有人的想法来延长? – STORM 2014-12-07 11:33:18