Sharepoint 2010 client object model
想要用sharepont 2010 client object model需要引用
<SharePoint:ScriptLink Name="SP.js" runat="server" OnDemand="true" Localizable="false"/>
为了确保你的js在加载完SP.js后就调用,需要添加下面这行代码:
ExecuteOrDelayUntilScriptLoaded(GetEleImgList, "sp.js");
第一个参数是自己的js方法:
1 var GetEleImageList=""; 2 var clientContext_Electronal=""; 3 var web_Electronal=""; 4 var Electronal_ImageList=""; 5 function GetEleImgList() 6 { 7 clientContext_Electronal=new SP.ClientContext.get_current(); 8 web_Electronal=clientContext_Electronal.get_web(); 9 Electronal_ImageList=web_Electronal.get_lists().getByTitle("列表名称"); 10 11 var camlQuery_Elec = new SP.CamlQuery(); 12 //查询语句 13 var strCaml_Elec = "<View><ViewFields><FieldRef Name='ID'/><FieldRef Name='FileLeafRef'/><FieldRef Name='_x520a__x7269__x7248__x672c__x53f7_'/></ViewFields><Query><Where><Eq><FieldRef Name='_x7535__x5b50__x520a__x7269_ID' /><Value Type='Number'>"+ElecID+"</Value></Eq></Where><OrderBy><FieldRef Name='_x520a__x7269__x7248__x672c__x53f7_' /></OrderBy></Query></View>"; 14 camlQuery_Elec.set_viewXml(strCaml_Elec); 15 GetEleImageList = Electronal_ImageList.getItems(camlQuery_Elec); 16 clientContext_Electronal.load(GetEleImageList); 17 clientContext_Electronal.executeQueryAsync( 18 function (sender, args) { onGetElectronalImage(sender, args); }, 19 function (sender, args) { onQueryFailed(sender, args); }); 20 } 21 22 23 function onGetElectronalImage(sender, args) 24 { 25 var listItemEnumerator = GetEleImageList.getEnumerator(); 26 var GetEleImgURL="" 27 var GetEleBigImgURL=""; 28 var code=""; 29 //循环数据 30 while(listItemEnumerator.moveNext()) 31 { 32 var oListItem = listItemEnumerator.get_current(); 33 var title = oListItem.get_item('FileLeafRef'); 34 var stitle = title.substring(0, title.lastIndexOf(".")) + "_jpg.jpg" 35 var id = oListItem.get_item('ID'); 36 code = oListItem.get_item('_x520a__x7269__x7248__x672c__x53f7_'); 37 GetEleImgURL = ImageUrl+stitle; 38 GetEleBigImgURL =BigImgUrl+title; 39 } 40 } 41 clientContext_Electronal=new SP.ClientContext.get_current(); 42 web_Electronal=clientContext_Electronal.get_web(); 43 Electronal_ImageList=web_Electronal.get_lists().getByTitle(列表名称); 44 45 if(arrList[index]!=undefined){ 46 //根据ID获取数据,并删除 47 var delItemIamage = Electronal_ImageList.getItemById(ElctImageID); 48 delItemIamage.deleteObject(); 49 clientContext_Electronal.executeQueryAsync( 50 function(sender,args){ onDeleteImage(sender,args);}, 51 function (sender, args) { onQueryFailed(sender, args); } 52 );} 53 }
更新某条数据,只需要把上面第47,48行处代码改成如下即可:
1 collList_Image = Electronal_ImageList.getItemById(Image_ID); 2 collList_Image.set_item("要修改的列",值); 3 collList_Image.set_item("要修改的列",值); 4 collList_Image.update();