ECMAScript客户端模型,是SharePoint2010推出的三种客户端模型“.NET托管”、“ECMAScript”、“Sliverlight”的一种,今天正好看到这,尝试了下,也拿出了和大家分享下。我自己感觉,客户端模型,和sp的对象模型没有太多区别,就是用起来,更加不得心应手了。今天写了下Script的,各种不好使,各种没调试,各种郁闷,哎。怎的一个愁字了得。好了,不费话了。

  客户端对象模型的优点,就是可以在没有服务器的条件下,进行客户端编程。比如,我是一个Moss小用户,然后我还没有服务器的访问权限,我就可以用Designer了。首先、新建一个aspx页,在头部添加SP.js的引用,我们就可以在这个页上,写我们的客户端模型代码了。添加位置在顶部PlaceHolderAdditionalPageHead这个节点里面,添加<sharepoint:ScriptLink
Name="SP.js" runat="server" OnDemand="true" Localizable="False"></sharepoint:ScriptLink>的js引用。

  下面是我做的一个例子:在在页面上写上<script>,然后编写我们的js脚本就可以了,感觉语法的格式,和sp对象模型很相似,首先是打开网站,打开列表,然后找到列表项就可以了。不过,和sp对象模型还是有区别的,sp对象模型,生成了对象就可以调用里面的值了,而客户端对象模型,还需要load一下,才可以取到里面的值。大家在写js的时候,一定要注意拼写!!!血的教训,因为调试起来非常不方便,所以第一遍写的时候,就要仔细。

  我的例子写了一个GetListItem的函数,然后可以读取列表里面的项目,在点击button的时候,读取列表里面的条目,然后显示出来。代码附在后面,有兴趣的朋友,可以试一试。效果图就是下图,点击之后,下面是图中蓝框的样子。自己也是初识ECMAScript,拿出来和大家分享下,如果有哪里说的不对的地方,欢迎大家留言指正。当然,我们不可能记住每个对象的使用,我们可以访问微软的网站,来查询我们需要的对象定义的方法和变量,可以点击下面的地址http://msdn.microsoft.com/en-us/library/ee538253.aspx

  

  <script type="text/javascript">

    function getlistitem()

  {

    var mycontext=new SP.ClientContext();

    var mysite=mycontext.get_web();

    var query = new SP.CamlQuery();

  query.set_viewXml("<View><Query></Query></View>");

  var mylist=mysite.get_lists().getByTitle('MyFirstLists');

    myitem= mylist.getItems(query);

 mycontext.load(myitem);

    mycontext.executeQueryAsync(Function.createDelegate(this,this.getsuccessed),Function.createDelegate    

  (this,this.getfailed));

   }

   function getsuccessed()

   { 

     var str="";

   var listsE=myitem.getEnumerator();

   while(listsE.moveNext())

   {

    str+=listsE.get_current().get_item("Title")+"<br>";   

   }

   document.getElementById("lists").innerHTML=str;

  }

   function getfailed(sender,args)

   {

    alert("failed~!");

   }

  </script>

  <div><input value="get2" type="button" onclick="getlistitem()"/></div>

  <div id="lists"></div>

  js写的很简单,希望大家不要见笑,如果有好的建议或者意见,希望大家给我留言,欢迎讨论。

  作者:霖雨

  出处:http://www.cnblogs.com/jianyus

  本文版权归 霖雨和博客园共有,欢迎转载,但请注明出处。

SharePoint2010 -- ECMAScript客户端模型简单示例的更多相关文章

  1. SharePoint 2010 -- Silverlight托管客户端模型简单示例

    Silverlight托管客户端模型,是SharePoint2010推出的三种客户端模型".NET托管"."ECMAScript"."Sliverli ...

  2. SharePoint 2010 -- .Net托管客户端模型简单示例

    .Net托管客户端模型,是SharePoint2010推出的三种客户端模型".NET托管"."ECMAScript"."Sliverlight&quo ...

  3. UDP通讯模型简单示例

    1. UDP通讯模型 2. 服务器端 ① 创建一个socket,用函数socket() ② 绑定IP地址.端口等信息到socket上,用函数bind() ③ 循环接收数据,用函数recvfrom() ...

  4. TCP通讯模型简单示例

    1. TCP通讯模型 2. 服务器端 ① 创建socket,用函数socket() ② 绑定IP地址.端口号等信息到socket上,用函数bind() ③ 设置允许的最大连接数,用函数listen() ...

  5. thrift服务端到客户端开发简单示例

    (1)首先我们在服务器端写个helloworld.thrift文件,如下所示: service HelloWorld{ string ping(1: string name), string getp ...

  6. 跨平台c++/boost/asio 简单的HTTP POST请求 客户端模型

    作为一个呼应,写一个c++版本的同步http post客户端功能,如果你需要纯C版本,移步这里 linux下纯C简单的HTTP POST请求 客户端模型 讲解一下基本的的http post协议 通过\ ...

  7. SignalR代理对象异常:Uncaught TypeError: Cannot read property 'client' of undefined 推出的结论 SignalR 简单示例 通过三个DEMO学会SignalR的三种实现方式 SignalR推送框架两个项目永久连接通讯使用 SignalR 集线器简单实例2 用SignalR创建实时永久长连接异步网络应用程序

    SignalR代理对象异常:Uncaught TypeError: Cannot read property 'client' of undefined 推出的结论   异常汇总:http://www ...

  8. web 框架的本质及自定义web框架 模板渲染jinja2 mvc 和 mtv框架 Django框架的下载安装 基于Django实现的一个简单示例

    Django基础一之web框架的本质 本节目录 一 web框架的本质及自定义web框架 二 模板渲染JinJa2 三 MVC和MTV框架 四 Django的下载安装 五 基于Django实现的一个简单 ...

  9. Linux下的C Socket编程 -- server端的简单示例

    Linux下的C Socket编程(三) server端的简单示例 经过前面的client端的学习,我们已经知道了如何创建socket,所以接下来就是去绑定他到具体的一个端口上面去. 绑定socket ...

随机推荐

  1. Android简易实战教程--第二十话《通过广播接收者,对拨打电话外加ip号》

    没睡着觉,起来更篇文章吧哈哈!首先祝贺李宗伟击败我丹,虽然我是支持我丹的,但是他也不容易哈哈,值得尊敬的人!切入正题:这一篇来介绍个自定义广播接收者. 通常我们在外拨电话的时候,一般为使用网络电话.如 ...

  2. GDB调试工具入门

    从windows转到linux下已经有一段时间了,每次刷算法题碰到问题需要调试的时候,就分分钟想关机,切换到windows上调试.于是,花了一点时间来搜索一下linux下常见的调试工具,这不搜不知道, ...

  3. android开发之调试技巧

    我们都知道,android的调试打了断点之后运行时要使用debug as->android application 但是这样的运行效率非常低,那么我们有没有快速的方法呢? 当然有. 我们打完断点 ...

  4. 07 设置View的显示与隐藏

    在代码中: 例子: <span style="font-size:14px;">ImageButton imageButton = new ImageButton(th ...

  5. 【安卓网络请求开源框架Volley源码解析系列】定制自己的Request请求及Volley框架源码剖析

    通过前面的学习我们已经掌握了Volley的基本用法,没看过的建议大家先去阅读我的博文[安卓网络请求开源框架Volley源码解析系列]初识Volley及其基本用法.如StringRequest用来请求一 ...

  6. TDD实践感悟

    每个开发者都想开发出高质量的代码,更少的Bug.更容易维护不仅让人心情愉悦,也让我们有更多时间去学习和生活. 少加一些班,多陪家人,:) 当开发任务非常简单时,比如基本的增删改查,可能使用怎样的方式开 ...

  7. iOS中 最新支付宝支付(AliPay) 韩俊强的博客

    每日更新关注:http://weibo.com/hanjunqiang  新浪微博 现在的支付方式一般有三种, 支付宝, 微信, 网银. 个人觉得最简单易用的还是支付宝, 微信虽然看起来币支付宝要简单 ...

  8. (七十四)iOS8之前使socket可以后台运行的方法

    对于使用socket通信的应用程序,常常希望App位于后台时仍然可以进行网络通信,这在iOS8和以后的版本是被默认允许的,socket可以直接在后台运行,而对于iOS8之前的版本就不行,需要进行两步设 ...

  9. ffplay播放器移植VC的工程:ffplay for MFC

    本文介绍一个自己做的FFPLAY移植到VC下的开源工程:ffplayfor MFC.本工程将ffmpeg项目中的ffplay播放器(ffplay.c)移植到了VC的环境下.并且使用MFC做了一套简单的 ...

  10. (国内)完美下载android源代码(文章已经丢失)

    刚刚文章莫名其妙的丢了,我重写了一篇,http://blog.csdn.net/song19891121/article/details/50099857 我们在很多时候需要下载android源代码进 ...