在Javascript里访问SharePoint列表数据的实现方法


Posted in Javascript onMay 22, 2011

在SharePoint2010里有了很好的解决方案(详见拙文SharePoint客户端编程系列https://3water.com/article/27198.htm),但是在SharePoint2007里就没那么好用,具体问题具体分析,本文要解决的是如何在JavaScript里通过WebService访问SharePoint数据的问题。

首先需要从此处(http://darrenjohnstone.net/download/12)下载JavaScript API包

引用次JS,里面有两个库,一个包是处理核心库SPAPIcore.js,另一个包提供了大多供调用的接口SPAPI_Lists.js

<script src="SPAPI_Core.js"></script>
<script src="SPAPI_Lists.js"></script>
最常用的接口方法是getListItems(listName, viewName, query, viewFields, rowLimit, queryOptions, webID)

以下是一个在SPD订制开发的时候经常遇到的问题,获取用户信息:

function getCurrentUserStat() 
{ 
var lists = new SPAPI_Lists(''); 
var items = lists.getListItems( 
'UserInfo', 
'', 
'<Query><Where><Eq><FieldRef Name="ID"/><Value Type="Counter">' + _spUserId + '</Value></Eq></Where></Query>', // query 
'<ViewFields><FieldRef Name="Department"/></ViewFields>', 
1, // rowLimit 
'' // queryOptions 
);

通过处理返回的XML文件可以获取相关信息
if (items.status == 200) 
{ 
var rows = items.responseXML.getElementsByTagName('z:row'); 
if (rows.length == 1) 
{ 
var dep = rows[0].getAttribute('ows_Department'); 
return rows[0].getAttribute('ows_Department'); 
} 
}

此方法的调用是同步发送请求,此外,在调试的时候如果想了解属性还有值的详细信息,可以通过alert(items.responseText)来查看返回的结果。

参考:

http://darrenjohnstone.net/2008/07/22/a-cross-browser-javascript-api-for-the-sharepoint-and-office-live-web-services/

Javascript 相关文章推荐
走出JavaScript初学困境—js初学
Dec 29 Javascript
举例说明如何为JavaScript的方法参数设置默认值
Nov 17 Javascript
jQuery Dialog 打开时自动聚焦的解决方法(两种方法)
Nov 24 Javascript
jQuery基于ajax操作json数据简单示例
Jan 05 Javascript
vue.js学习笔记:如何加载本地json文件
Jan 17 Javascript
JavaScript实现form表单的多文件上传
Mar 27 Javascript
javascript实现非常简单的小数取整功能示例
Jun 13 Javascript
weex slider实现滑动底部导航功能
Aug 28 Javascript
react-redux中connect的装饰器用法@connect详解
Jan 13 Javascript
微信小程序实现上传图片裁剪图片过程解析
Aug 22 Javascript
vue不操作dom实现图片轮播的示例代码
Dec 18 Javascript
node使用async_hooks模块进行请求追踪
Jan 28 Javascript
SharePoint 客户端对象模型 (一) ECMA Script
May 22 #Javascript
JQuery里选择超链接的实现代码
May 22 #Javascript
改善用户体验的五款jQuery插件分享
May 22 #Javascript
JS 进度条效果实现代码整理
May 21 #Javascript
jquery 使用点滴函数代码
May 20 #Javascript
JQuery对checkbox操作 (循环获取)
May 20 #Javascript
检测jQuery.js是否已加载的判断代码
May 20 #Javascript
You might like
PHP实现用户认证及管理完全源码
2007/03/11 PHP
纯php打造的tab选项卡效果代码(不用js)
2010/12/29 PHP
简单介绍PHP的责任链编程模式
2015/08/11 PHP
Laravel中log无法写入问题的解决
2017/06/17 PHP
三个思路解决laravel上传文件报错:413 Request Entity Too Large问题
2017/11/13 PHP
jquery动态添加option示例
2013/12/30 Javascript
JS回调函数的应用简单实例
2014/09/17 Javascript
基于javascript实现tab切换特效
2016/03/29 Javascript
jQuery实现下拉框左右移动(全部移动,已选移动)
2016/04/15 Javascript
js 获取站点应用名的简单实例
2016/08/18 Javascript
浅谈Javascript中的函数、this以及原型
2016/10/09 Javascript
js中的eval()函数把含有转义字符的字符串转换成Object对象的方法
2016/12/02 Javascript
js模态对话框使用方法详解
2017/02/16 Javascript
写给vue新手们的vue渲染页面教程
2017/09/01 Javascript
jQuery实现鼠标响应式透明度渐变动画效果示例
2018/02/13 jQuery
浅析Vue 生命周期
2018/06/21 Javascript
vue-router的使用方法及含参数的配置方法
2018/11/13 Javascript
vue 点击其他区域关闭自定义div操作
2020/07/17 Javascript
[04:16]DOTA2英雄梦之声_第09期_斧王
2014/06/21 DOTA
在windows系统中实现python3安装lxml
2016/03/23 Python
python实现SMTP邮件发送功能
2020/06/16 Python
详解Python最长公共子串和最长公共子序列的实现
2018/07/07 Python
python把ipynb文件转换成pdf文件过程详解
2019/07/09 Python
利用jupyter网页版本进行python函数查询方式
2020/04/14 Python
PyChon中关于Jekins的详细安装(推荐)
2020/12/28 Python
CSS3自定义滚动条样式 ::webkit-scrollbar的示例代码详解
2020/06/01 HTML / CSS
教师自我鉴定
2013/12/13 职场文书
食堂个人先进事迹
2014/01/22 职场文书
文明风采获奖感言
2014/02/18 职场文书
统计岗位职责
2014/02/21 职场文书
村干部四风问题整改措施
2014/09/30 职场文书
倡议书的格式写法
2015/04/28 职场文书
研究生论文答辩开场白
2015/05/27 职场文书
催款函怎么写
2015/06/24 职场文书
2019年七夕情人节浪漫祝福语大全!
2019/08/08 职场文书
解读Vue组件注册方式
2021/05/15 Vue.js