如何使用javascript读取sharePoint列表项值(当前项目)
我必须从图片库中读取标题和位置并使用CEWP进行显示。如何使用javascript读取sharePoint列表项值(当前项目)
有人可以建议如何阅读使用Javascript的SharePoint列表项值。
在SharePoint 2010中,可以使用三种不同类型的客户端对象模型扩展。它们是托管客户端对象模型,ECMAScript和silverlight扩展。
这个环节更贴近您的需求How to: Retrieve Lists Using JavaScript 和How do you get the current list item in JavaScript?
SP.ListOperation.Selection Methods
var value = SP.ListOperation.Selection.getSelectedItems();
检查以下详细信息的链接:
SharePoint 2010: Use ECMAScript to manipulate (Add/Delete/Update/Get) List Items
Accessing List Data using the JavaScript Client OM
Using the SP2010 Client Object Model to update a list item How to – SharePoint 2010 – JS client object model and UI advancements
交互时,您可以使用JavaScript客户端对象模型。假设窗口的_spPageContextInfo
对象设置与webServerRelativeUrl
,pageListId
和pageItemId
属性初始化:
var context = new SP.ClientContext(_spPageContextInfo.webServerRelativeUrl);
var list = context.get_web().get_lists().getById(_spPageContextInfo.pageListId);
var item = list.getItemById(_spPageContextInfo.pageItemId);
然后,你可以加载你需要的字段:
context.load(item, "Title", "Location");
context.executeQueryAsync(Function.createDelegate(this, this.mySuccessFunction), Function.createDelegate(this, this.myErrorFunction));
item
现将字段填入你要求,你可以像这样进行检索:
var itemTitle = item.get_item("Title");
var itemLocation = item.get_item("Location");
注意您应该使用显示内容,而不是内部要加载的字段名称。
if _spPageContextInfo.pageItemId is undefined.
Use this function
function getUrlVars() {
var vars = [],
hash;
var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
for (var i = 0; i < hashes.length; i++) {
hash = hashes[i].split('=');
vars.push(hash[0]);
vars[hash[0]] = hash[1];
}
return vars;
}
//THEN DO THIS
var id = getUrlVars()["ID"];
//THEN DO YOUR MAGIC
var context = new SP.ClientContext(_spPageContextInfo.webServerRelativeUrl);
var list = context.get_web().get_lists().getById(_spPageContextInfo.pageListId);
var item = list.getItemById(id);
我收到错误“TypeError:SP.ListOperation is undefined”。你能提出任何解决这个问题的建议吗? –
我试着把'ExecuteOrDelayUntilScriptLoaded'(ReadCustomvalue,“sp.js”)和SP.SOD.executeFunc('sp.js','SP.ClientContext',ReadCustomvalue'')放在一起。但他们都没有解决这个问题。 –