SPServices介绍之二:基本方法调用

SPServices介绍之二:基本方法调用

分类: SPSerivces2014-09-21 04:20 253人阅读 评论(0) 收藏 举报

sharepoint 2013SPServices

在上一篇文章SPServices介绍之一中,简单介绍了SPServices以及如何将它添加到SharePoint的项目中,这篇文章继续介绍一下SPSevices提供的基本方法。

这些基本的方法可以到SPServices的主页中查找:点击打开链接

核心对象$().SPServices

对象$().SPServices是SPServices库的核心对象,绝大多数的方法调用都需要使用这个对象,例如

获取当前站点的url的方法SPGetCurrentSite

[javascript] view plaincopy

  1. $().SPServices.SPGetCurrentSite();


获取当前登录用户的信息的方法
SPGetCurrentUser
语法:

[javascript] view plaincopy

  1. $().SPServices.SPGetCurrentUser{(
  2. webURL: "",<span style="white-space:pre">     </span>//站点url,默认是当前站点url
  3. fieldName: "Name",  //用户信息列表中的列名
  4. fieldNames:[],      //用户信息列表中的列名数组
  5. debug:false         //是否开启debug模式,如果开启,调用出错时显示debug信息
  6. });

一个例子:

[javascript] view plaincopy

  1. $().SPServices.SPGetCurrentUser({fieldNames: ["Name", "Title", "EMail"], debug:false});

这个方法通过Ajax调用获取用户信息列表中的信息(/_layouts/userdisp.aspx)。我们可以在fieldNames中指定读取的column名字,其中Name是Account名(对应Account列),Title是用户名(对应Name列),Email是邮箱名(对应Work email列),如果对于用户Andy Lee,他的用户信息是:

那么调用SPGetCurrentUser方法之后获取的信息是:

获取列表中的最后一个item的ID的方法SPGetLastItemId

语法:

[javascript] view plaincopy

  1. $().SPServices.SPGetLastItemId({
  2. webURL: "",        //列表所在站点的url,默认是当前站点url,可以使用相对url例如 "/", "/Departments/HR"
  3. listName: "",      //列表的名字或者GUID, 如果是GUID,应该使用"{9CC9DF10-E677-4A59-8FBE-B622F9598CFE}"这种形式
  4. userAccount: "",   //指定用户,接受"domain\username"这种形式,默认使用当前用户
  5. CAMLQuery: ""      //指定一个CAML查询,形如"<Eq><FieldRef Name=‘Status‘/><Value Type=‘Text‘>Avtive</Value></Eq>"
  6. });

一个例子:

[javascript] view plaincopy

  1. $().SPServices.SPGetLastItemId({
  2. listName:"Tasks"
  3. });

将返回Tasks列表中最后一个创建的item的id。

根据column的static name获取display name的方法SPGetDisplayFromStatic

语法

[javascript] view plaincopy

  1. var thisDisplayName = $().SPServices.SPGetDisplayFromStatic ({
  2. webURL: "",             //列表所在站点的url,默认是当前站点url,可以使用相对url例如 "/", "/Departments/HR"
  3. listName: "",           //列表名字或者GUID,如果是GUID,应该使用"{9CC9DF10-E677-4A59-8FBE-B622F9598CFE}"这种形式
  4. columnStaticName: "",   //column的static name
  5. columnStaticNames: []   //可以指定多个column的static name
  6. });

一个例子,获取Tasks列表中的Title列的display name:

[javascript] view plaincopy

  1. var titleDisplayName = $().SPServices.SPGetDisplayFromStatic ({
  2. listName: "Tasks",
  3. columnStaticName: "Title"
  4. });

获取Tasks列表中的Title和Status列的display name:

[javascript] view plaincopy

  1. var displayNames = $().SPServices.SPGetDisplayFromStatic ({
  2. listName: "Tasks",
  3. columnStaticNames: {"Title", "ContentType"}
  4. });

根据column的display name获取static name的方法SPGetStaticFromDisplay
与上一个方法相反,这个方法根据display name获取column的static name。

语法:

[javascript] view plaincopy

  1. var thisStaticName = $().SPServices.SPGetStaticFromDisplay ({
  2. webURL: "",
  3. listName: "",
  4. columnDisplayName: "",
  5. columnDisplayNames: []
  6. });

仅举一个例子:

[javascript] view plaincopy

  1. var staticNames = $().SPServices.SPGetStaticFromDisplay({
  2. listName: "Tasks",
  3. columnDisplayNames: ["Task Name", "Content Type"]
  4. });

可以通过staticNames["Task Name"]来获取Task Name列对应的static name。

获取查询字符串的方法SPGetQueryString

用来获取url中的查询字符串的参数值,例如页面url是“http://servername/sitename/Lists/MyList/NewForm.aspx?ID=10”,那么可以使用以下方式获取参数ID的值:

[javascript] view plaincopy

  1. var queryString = $().SPServices.SPGetQueryString();
  2. var itemId = queryString["ID"];
  3. 或者
  4. var itemId = queryString.ID

获取当前列表ID的方法SPListNameFromUrl

在列表的上下文中,从Url中获取列表的ID。

[javascript] view plaincopy

  1. var listId = $().SPServices.SPListNameFromUrl()

将日期转换为ISO格式的方法SPConvertDateToISO

语法:

[javascript] view plaincopy

  1. $().SPServices.SPConvertDateToISO({
  2. dateToConvert: new Date(),    //日期,默认是当前日期和时间
  3. dateOffset: "-05:00"          //时区偏移量,默认是EST时间
  4. });

一个例子:

[javascript] view plaincopy

  1. var currentISO = $().SPServices.SPConvertDateToISO(); //获取当前日期的ISO时间,格式为:"2014-09-18T17:28:31Z-05:00"

以下是这篇文章的示例代码:

[javascript] view plaincopy

  1. <script type="text/javascript">
  2. $(document).ready(function () {
  3. $("#output").append("<div>-----------Start SPGetCurrentSite----------</div>");
  4. var currentSiteUrl = $().SPServices.SPGetCurrentSite();
  5. $("#output").append("<div>Current Site Url: " + currentSiteUrl + "</div>");
  6. $("#output").append("<div>-----------End SPGetCurrentSite----------</div>");
  7. $("#output").append("<div>-----------Start SPGetCurrentUser----------</div>");
  8. var currentUser = $().SPServices.SPGetCurrentUser({fieldNames: ["Name", "Title", "EMail"], debug:false});
  9. $("#output").append("<div>Current User Account Name: " + currentUser.Name + "</div>");
  10. $("#output").append("<div>Current User Name: " + currentUser.Title + "</div>");
  11. $("#output").append("<div>Current User Email: " + currentUser.EMail + "</div>");
  12. $("#output").append("<div>-----------End SPGetCurrentUser----------</div>");
  13. $("#output").append("<div>-----------Start SPGetLastItemId----------</div>");
  14. var lastItemId = $().SPServices.SPGetLastItemId({ listName: "Tasks" });
  15. $("#output").append("<div>Last Item Id in Tasks List: " + lastItemId + "</div>");
  16. $("#output").append("<div>-----------End SPGetLastItemId----------</div>");
  17. $("#output").append("<div>-----------Start SPGetDisplayFromStatic----------</div>");
  18. var titleDisplayName = $().SPServices.SPGetDisplayFromStatic({
  19. listName: "Tasks",
  20. columnStaticName: "Title"
  21. });
  22. $("#output").append("<div>Display Name of Title Column: " + titleDisplayName + "</div>");
  23. var displayNames = $().SPServices.SPGetDisplayFromStatic ({
  24. listName: "Tasks",
  25. columnStaticNames: ["Title", "ContentType"]
  26. });
  27. $("#output").append("<div>Display Name of Title Column: " + displayNames.Title + "</div>");
  28. $("#output").append("<div>Display Name of ContentType Column: " + displayNames.ContentType + "</div>");
  29. $("#output").append("<div>-----------End SPGetDisplayFromStatic----------</div>");
  30. $("#output").append("<div>-----------Start SPGetStaticFromDisplay----------</div>");
  31. var staticNames = $().SPServices.SPGetStaticFromDisplay({
  32. listName: "Tasks",
  33. columnDisplayNames: ["Task Name", "Content Type"]
  34. });
  35. $("#output").append("<div>Static Name of Task Name Column: " + staticNames["Task Name"] + "</div>");
  36. $("#output").append("<div>Static Name of Content Type Column: " + staticNames["Content Type"] + "</div>");
  37. $("#output").append("<div>-----------End SPGetStaticFromDisplay----------</div>");
  38. $("#output").append("<div>-----------Start SPConvertDateToISO----------</div>");
  39. var currentISO = $().SPServices.SPConvertDateToISO()
  40. $("#output").append("<div>Current ISO time: " + currentISO + "</div>");
  41. $("#output").append("<div>-----------End SPConvertDateToISO----------</div>");
  42. });
  43. </script>
时间: 2024-12-27 09:06:28

SPServices介绍之二:基本方法调用的相关文章

JVM(十二):方法调用

JVM(十二):方法调用 在 JVM(七):JVM内存结构 中,我们说到了方法执行在何种内存结构上执行:Java 方法活动在虚拟机栈中的栈帧上,栈帧的具体结构在内存结构中已经详细讲解过了,下面就让我们来看一下 方法是如何调用的. 方法调用 首先,我们要明白一个基础性概念:方法调用并不是方法执行.其只是确定该调用哪一个方法而已(多态的影响,选择方法的不同版本).并且因为 Java 调用的动态性,有些方法需要在类加载阶段动态解析,这也为 JVM 解析符号引用成直接引用提供了难度. 解析 在 JVM(

JVM学习笔记(二)--方法调用之静态分配和动态分配

本篇文章从JVM的角度来理解Java学习中经常提到的重载和重写. 方法调用:方法调用不等同于方法执行,在Java虚拟机中,方法调用仅仅是为了确定调用哪个版本的方法.方法调用分为解析调用和分派.解析调用一定是静态的,而分派可以是静态的,也可以是动态的.我们这里只介绍分派中的静态分配和动态分配. 静态分配:所有依赖静态类型来定位方法执行版本的分派动作称为静态分配. 下面看个例子,顺便来猜一下结果(面试中经常遇到): 1 class Human { 2 3 } 4 5 class Man extend

SPServices介绍之三:使用SPSerivces对象调用Web Service

SPServices介绍之三:使用SPSerivces对象调用Web Service 分类: SPSerivces2014-09-21 04:23 304人阅读 评论(0) 收藏 举报 在上一篇文章SPServices介绍之二中,介绍了一些SPServices的基本方法,除了这些方法,SPServices的主要用处是使用Ajax方法调用SharePoint提供的Web Service. 先看一下语法: [javascript] view plaincopy $().SPServices({ op

实现跨域iframe接口方法调用 简单介绍

实现跨域iframe接口方法调用 简单介绍: 页面a.html域名为www.a.com,嵌入页面http://www.b.com/b.html. b.html要调用a.html中的js函数,由于两个页面不在一个域中,会提示没权限. 下面就介绍一下如何如何解决此问题,需要的朋友可以做一下参考. 一.cross.js代码如下: (function(global){ global.Cross = { signalHandler: {}, on: function(signal, func){ this

Android bluetooth介绍(二): android 蓝牙代码架构及其uart 到rfcomm流程

关键词:蓝牙blueZ  UART  HCI_UART H4  HCI  L2CAP RFCOMM  版本:基于android4.2之前版本 bluez内核:linux/linux3.08系统:android/android4.1.3.4作者:xubin341719(欢迎转载,请注明作者,请尊重版权谢谢)欢迎指正错误,共同学习.共同进步!!一.Android Bluetooth Architecture蓝牙代码架构部分(google 官方蓝牙框架) Android的蓝牙系统,自下而上包括以下一些

Android IPC机制(三)在Android Studio中使用AIDL实现跨进程方法调用

在上一篇文章Android IPC机制(二)用Messenger进行进程间通信中我们介绍了使用Messenger来进行进程间通信的方法,但是我们能发现Messenger是以串行的方式来处理客户端发来的信息,如果有大量的消息发到服务端,服务端仍然一个一个的处理再响应客户端显然是不合适的.另外,Messenger用来进程间进行数据传递但是却不能满足跨进程的方法调用,接下来我们来使用AIDL来实现跨进程方法调用,此前我们都是用Eclipse来实现的,这次我们看看在Android Studio中使用AI

SPServices介绍之四:实现查阅项的级联选择功能(联动功能)

SPServices介绍之四:实现查阅项的级联选择功能(联动功能) 分类: SPSerivces2014-09-21 04:27 251人阅读 评论(0) 收藏 举报 sharepoint 2013级联SPServices查阅项联动 在上一篇文章SPServices介绍之三中介绍了使用SPServices调用SharePoint Web Service的基本方法,这篇文章利用SPCascadeDropdowns方法实现下拉菜单的级联选择功能(联动功能). 假设需要实现 国家->公司->产品 这

C++ AMP 介绍(二)

C++ AMP 介绍(二) 最后更新日期:2014-05-02 阅读前提:<C++ AMP介绍(一)> 环境:Windows 8.1 64bit英文版,Visual Studio 2013 Update1英文版,Nvidia QuadroK600 显卡 内容简介 介绍C++ AMP的 array.array_view.extent类和平铺的知识. 正文 数据的移动 array和 array_view两个数据容器(模板类)用于把数据从运行时库(CPU)移到加速器(显卡或通用计算卡)上,array

oc语言学习之基础知识点介绍(二):类和对象的进一步介绍

一.类.对象在内存中的存储 /* 内存分区: 栈:局部变量 堆:程序员自己写代码申请开辟的 程序员自己维护,编译器现在帮我们自动优化了,它在合适的给我们加上了释放空间的语句,所以我们现在写的对象不会造成内存泄露 全局区:所有的全局变量和静态变量 常量区:所有的常量 代码区:程序编译后的指令集 类是模板,肯定需要存在内存里面,因为实例化对象的时候需要根据这个模板来创建,那么存在内存里面,存在哪呢?? 类模板存在:全局区! 存的是:类的描述,还有所有的方法实现 每个对象都会有一个系统给我们的isa指