function createListItem() { 
   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);
 
   //Single line of text 
   oListItem.set_item('Title', 'My New Item!');

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

//Multi Choice 
   var petkaChoiceMultiArray = new Array("Enter Choice #1","Enter Choice #2");   
   oListItem.set_item('PetkaChoiceMulti', petkaChoiceMultiArray);

//Single Lookup 
   var PetkaLookupSingle = new SP.FieldLookupValue(); 
   PetkaLookupSingle.set_lookupId(2); 
   oListItem.set_item('PetkaLookup', PetkaLookupSingle);

//Multi 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=1 / No=0 
   oListItem.set_item('PetkaYesNo', 1);

// Single Person 
   var singleUser = SP.FieldUserValue.fromUser('Peter Dotsenko'); 
   oListItem.set_item('PetkaPersonSingle', singleUser); 
  
   //Multi Person 
   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);

//Managed Multi 
   var field = oList.get_fields().getByInternalNameOrTitle("PetkaManagedMulti"); 
   var taxField = clientContext.castTo(field, SP.Taxonomy.TaxonomyField); 
   var terms = new SP.Taxonomy.TaxonomyFieldValueCollection(clientContext,getMultiTax(),taxField); 
   taxField.setFieldValueByValueCollection(oListItem, terms);

//Managed Single 
   var field = oList.get_fields().getByInternalNameOrTitle("PetkaManagedSingle"); 
   var taxField = clientContext.castTo(field, SP.Taxonomy.TaxonomyField); 
   var taxonomySingle = new SP.Taxonomy.TaxonomyFieldValue(); 
   taxonomySingle.set_label("Mamo"); 
   taxonomySingle.set_termGuid("10d05b55-6ae5-413b-9fe6-ff11b9b5767c"); 
   taxonomySingle.set_wssId(-1); 
   taxField.setFieldValueByValue(oListItem, taxonomySingle);
 
   //Hyperlink or Picture 
   var hyperLink = new SP.FieldUrlValue(); 
   hyperLink.set_url("http://cnn.com"); 
   hyperLink.set_description("CNN"); 
   oListItem.set_item('PetkaHyperLink', hyperLink);
 
   //Currency 
   oListItem.set_item('PetkaCurrency', '100');
 
   //DateTime 
   oListItem.set_item('PetkaDateTime', '3/14/2014');

//MultiLine text 
   oListItem.set_item('PetkaMultiText', '<p><strong>Hello!</strong></p>');
 
   oListItem.update(); 
   clientContext.load(oListItem); 
   clientContext.executeQueryAsync( 
     Function.createDelegate(this, this.onQuerySucceeded),  
     Function.createDelegate(this, this.onQueryFailed) 
   ); 
}

function getMultiTax(){ 
      var terms = new Array(); 
      terms.push("-1;#Mamo|10d05b55-6ae5-413b-9fe6-ff11b9b5767c"); 
      terms.push("-1;#Popo|178888b0-7942-45bb-b3f1-2f38d476e3db"); 
      return terms.join(";#"); 
}

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());
}

JSOM 中对各种字段操作的更多相关文章

  1. Javascript 操作 Sql中的Xml 字段

    在一个项目当中,我们需要把数据库中的Xml字段中的信息表现在页面中,如果用Sql进行操作,读取.这样的话,必然导致太复杂,于是我想到了,如果把Xml字段先读出来,然后用Js去操作,这样岂不是简单了许多 ...

  2. MySQL数据库 字段操作 多表关系(更新中...)

    外键 (foreign key) ## 外键 ```mysql # 作者(author):id,name,sex,age,mobile, detail_id # 作者详情(author_detail) ...

  3. .Net处理Oracle中Clob类型字段总结

    最近在做项目中用到Clob这个字段,Clob是存储无限长字符的Oracle字段,用的时候网上找资料找了好久,内容不是很多,大部分都不能用,当然也有可以用的,测试了不同版本,整理了一下,给大家在做项目的 ...

  4. C#更新SQLServer中的TimeStamp字段(时间戳) 防止同时修改一行时覆盖更新

    C#更新SQLServer中的TimeStamp字段(时间戳) 分类: C#2012-10-24 15:10 1878人阅读 评论(0) 收藏 举报 public partial class Form ...

  5. mysql中的null字段值的处理及大小写问题

    在MySQL中,NULL字段的处理,需要注意,当在处理查询条件中有NULL,很有可能你得到的值不是想要的,因为,在MySQL中,判断NULL值相等(=)或者不等(!=)都会返回false.主要出现在常 ...

  6. Django中的ORM进阶操作

    Django中的ORM进阶操作 Django中是通过ORM来操作数据库的,通过ORM可以很easy的实现与数据库的交互.但是仍然有几种操作是非常绕也特别容易混淆的.于是,针对这一块,来一个分类总结吧. ...

  7. [小技巧][ASP.Net MVC Hack] 使用 HTTP 报文中的 Header 字段进行身份验证

    在一些 Web 系统中,身份验证是依靠硬件证书进行的:在电脑上插入 USB 证书,浏览器插件读取证书的相关信息,然后在发送 HTTP 登录请求时顺便在 Header 字段附加上身份信息.服务器端处理这 ...

  8. SQL导入txt以及SQL中的时间格式操作

    原文:SQL导入txt以及SQL中的时间格式操作 MySQL中导入txt的指令为: load data local infile "路径名称" into table "表 ...

  9. HTTP 报文中的 Header 字段进行身份验证

    [小技巧][ASP.Net MVC Hack] 使用 HTTP 报文中的 Header 字段进行身份验证 在一些 Web 系统中,身份验证是依靠硬件证书进行的:在电脑上插入 USB 证书,浏览器插件读 ...

随机推荐

  1. 响应式网页中,如何只用CSS实现div的高和宽保持固定比例

    引言: 如果div里是<img>,原生就支持. .item img {     float: left;     margin:5%;     width: 20%; } >> ...

  2. 【Java基础】创建和销毁对象

    Num1:考虑用静态工厂方法代替构造器 对于类而言,常见的方法是提供一个公有的构造器,但其实还有一种方法叫做静态工厂方法(static factory method),它只是一个返回类的实例静态方法. ...

  3. XML基础学习01

    XML学习 1:XML:可扩展的标识语言,是一种描述结构数据的格式,简化了网络中数据交换和表示,使得代码,数据和表示分离,并作为数据交换的标准格式,被称为智能数据文档. 2:当我们不使用数据库来存储数 ...

  4. Load Audio or Vedio files

    //Load Audio or Vedio files private void btnLoadFile_Click(object sender, EventArgs e) { Startindex ...

  5. [Asp.net 5] Configuration-新一代的配置文件(神奇的Binder)

    关于配置文件的目录:[Asp.net 5] Configuration-新一代的配置文件 之前看过MVC4.0的源码,里面就有Binder.作用是将前台页面传递过来的键值对/字典表绑定到特定的对象.此 ...

  6. .NET Core 单元测试 MSTest

    .NET Core 单元测试 MSTest ,MSTest Framework 已经支持 .NET Core RC2 / ASP.NET Core RC2. 之前都是使用 xUnit.net ,现在 ...

  7. SignalR入门之从外部访问持久性连接或Hub

    有的时候,需要从外部访问持久性连接或Hub服务. 比如,假设A和B两个客户端正在聊天,那么系统或第三方在不参与聊天的情况需要为他们发送系统消息,那么此时,就需要独立来访问持久性连接或Hub服务. 之前 ...

  8. 【从API学英语】-DriverManager

    原文: The basic service for managing a set of JDBC drivers. NOTE: The DataSource interface, new in the ...

  9. 怎样给Eclipse添加一个Xml模板

    1.找到Window/Preferences/XML/XML Files/Editor/Templates 2.新建一个模板,设置一个名称并且在Pattern中设置自己的XML模板就可以了,同时支持导 ...

  10. MYSQL 解锁与锁表

    解锁 第一种 show processlist; 找到锁进程,kill id ; 第二种 mysql>UNLOCK TABLES; 锁表 锁定数据表,避免在备份过程中,表被更新 mysql> ...