【Sharepoint】如何通过JSOM设置SharePoint list item的值

下面将以create为例(edit同样适用)

实例化list item对象

var clientContext = new SP.ClientContext(_spPageContextInfo.siteAbsoluteUrl);

var oList = clientContext.get_web().get_lists().getByTitle('TestList');

var itemCreateInfo = new SP.ListItemCreationInformation();

this.oListItem = oList.addItem(itemCreateInfo);

给不同类型的列设置值

//单行文本类型

oListItem.set_item('Title', 'My New Item!');

//选项类型(单选)

oListItem.set_item('PetkaChoiceDrop', 'Enter Choice #1');

//选项类型(多选)

var petkaChoiceMultiArray = new Array("Enter Choice #1","Enter Choice #2");

oListItem.set_item('PetkaChoiceMulti', petkaChoiceMultiArray);

//Lookup (单选)

var PetkaLookupSingle = new SP.FieldLookupValue();

PetkaLookupSingle.set_lookupId(2);

oListItem.set_item('PetkaLookup', PetkaLookupSingle);

//Lookup (多选)

var lookupsIds = [1,2];

var lookups = [];

for (var ii in lookupsIds) {

       var lookupValue = new SP.FieldLookupValue();

       lookupValue.set_lookupId(lookupsIds[ii]);

       lookups.push(lookupValue);

}

oListItem.set_item('PetkaLookupMulti', lookups);

//Yes或No :Yes=1 / No=0

oListItem.set_item('PetkaYesNo', 1);

// 单用户

var singleUser = SP.FieldUserValue.fromUser('Peter Dotsenko');

oListItem.set_item('PetkaPersonSingle', singleUser);

//多用户

var petkaUserMultiArray = new Array("peterd@domain.com","Peter Dotsenko","domain\\peterd");

var lookups = [];

for (var ii in petkaUserMultiArray) {

       var lookupValue = SP.FieldUserValue.fromUser(petkaUserMultiArray[ii]);

       lookups.push(lookupValue);

}

oListItem.set_item('PetkaPersonMulti', lookups);

//超链接或图片字段

var hyperLink = new SP.FieldUrlValue();

hyperLink.set_url("http://cnn.com");

hyperLink.set_description("CNN");

oListItem.set_item('PetkaHyperLink', hyperLink);

//币种字段

oListItem.set_item('PetkaCurrency', '100');

//日期字段

oListItem.set_item('PetkaDateTime', '3/14/2014');

//多行文本字段

oListItem.set_item('PetkaMultiText', '<p><strong>Hello!</strong></p>');

 设置完成后添加到list中

oListItem.update();

clientContext.load(oListItem);

clientContext.executeQueryAsync(

         Function.createDelegate(this, this.onQuerySucceeded),

         Function.createDelegate(this, this.onQueryFailed)

);

//单独定义执行成功或失败的function

function onQuerySucceeded()

{

       SP.UI.Notify.addNotification('Item created: ' + oListItem.get_id());

}

function onQueryFailed(sender, args)

{

         console.log('Request failed. ' + args.get_message() + '\n' + args.get_stackTrace());

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一起来学吧

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值