使用客户端对象模型(CSOM)获取Sharepoint选择列表项

时间:2014-02-11 12:07:13

标签: javascript sharepoint sharepoint-2010 csom

任何人都可以通过在sharepoint 2010中使用客户端对象模型(CSOM)为Getting Sharepoint选择列表项建议好的站点或示例代码来帮助我。我需要使用CSOM打印这些选定的项目。请帮帮我。谢谢你。

1 个答案:

答案 0 :(得分:6)

SP.ListOperation.Selection Class提供选择列表或列表项的方法,特别是SP.ListOperation.Selection.getSelectedItems() method获取正在选择的列表项

示例1:获取所选项目

function getSelectedItems()
{
    var context = SP.ClientContext.get_current();
    var selectedItems = SP.ListOperation.Selection.getSelectedItems(context);
    return selectedItems;
}
  

注意:方法SP.ListOperation.Selection.getSelectedItems返回键/值集合>包含列表   正在选择的项目(不是SP.ListItem集合!)

示例2.获取选定的SP.ListItem集合

function getSelectedItems(OnSuccess,OnError)
{
    var context = SP.ClientContext.get_current();
    var listId = SP.ListOperation.Selection.getSelectedList(); //selected list Id
    var selectedItemIds = SP.ListOperation.Selection.getSelectedItems(context); //selected Items Ids

    var list = context.get_web().get_lists().getById(listId);
    var listItems = [];
    for (idx in selectedItemIds)
    {
        var item = list.getItemById(parseInt(selectedItemIds[idx].id));
        listItems.push(item);
        context.load(item);
    }
    context.executeQueryAsync(
       function() {
          OnSuccess(listItems);       
       },
       OnError
    ); 

}

//Usage
getSelectedItems(function(items){
    for (var i =0 ; i < items.length;i++)
    {
       console.log(items[i].get_item('Title'));  
    }  
},function(sender,args){
    console.log('An error occured: ' + args.get_message());
});