在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 相关文章推荐
Firefox和IE浏览器兼容JS脚本写法小结
Jul 07 Javascript
让Firefox支持event对象实现代码
Nov 07 Javascript
javascript笔记 String类replace函数的一些事
Sep 22 Javascript
javascript判断非数字的简单例子
Jul 18 Javascript
使用Sticky组件实现带sticky效果的tab导航和滚动导航的方法
Mar 22 Javascript
jQuery leonaScroll 1.1 自定义滚动条插件(推荐)
Sep 17 Javascript
基于jQuery实现表格的排序
Dec 02 Javascript
js轮播图透明度切换(带上下页和底部圆点切换)
Apr 27 Javascript
vue移动端裁剪图片结合插件Cropper的使用实例代码
Jul 10 Javascript
Vue+webpack项目基础配置教程
Feb 12 Javascript
原生JS实现前端本地文件上传
Sep 08 Javascript
基于javascript处理nginx请求过程详解
Jul 07 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
不用数据库的多用户文件自由上传投票系统(2)
2006/10/09 PHP
php addslashes及其他清除空格的方法是不安全的
2012/01/25 PHP
分享php代码将360浏览器导出的favdb的sqlite数据库文件转换为html
2015/12/09 PHP
smarty高级特性之对象的使用方法
2015/12/25 PHP
jQuery避免$符和其他JS库冲突的方法对比
2014/02/20 Javascript
jquery实现通用版鼠标经过淡入淡出效果
2014/06/15 Javascript
jquery仿QQ登录账号选择下拉框效果
2016/03/22 Javascript
jQuery实现按钮点击遮罩加载及处理完后恢复的效果
2016/06/07 Javascript
javascript鼠标滑过显示二级菜单特效
2020/11/18 Javascript
利用NPM淘宝的node.js镜像加速nvm
2017/03/27 Javascript
javascript实现日期三级联动下拉框选择菜单
2020/12/03 Javascript
js的函数的按值传递参数(实例讲解)
2017/11/16 Javascript
JavaScript基础心法 深浅拷贝(浅拷贝和深拷贝)
2018/03/05 Javascript
VUE和Antv G6实现在线拓扑图编辑操作
2020/10/28 Javascript
Webpack的Loader和Plugin的区别
2020/11/09 Javascript
在IIS服务器上以CGI方式运行Python脚本的教程
2015/04/25 Python
python批量添加zabbix Screens的两个脚本分享
2017/01/16 Python
Python selenium实现微博自动登录的示例代码
2018/05/16 Python
Python实现的个人所得税计算器示例
2018/06/01 Python
python 使用turtule绘制递归图形(螺旋、二叉树、谢尔宾斯基三角形)
2019/05/30 Python
django 使用 PIL 压缩图片的例子
2019/08/16 Python
Css3+Js制作漂亮时钟(附源码)
2013/04/24 HTML / CSS
HTML5 b和i标记将被赋予真正的语义
2009/07/16 HTML / CSS
HTML块级标签汇总(小篇)
2016/07/13 HTML / CSS
印度最大的酒店品牌网络:OYO Rooms
2016/07/24 全球购物
Hotels.com越南:酒店预订
2019/10/29 全球购物
澳大利亚手袋、珠宝和在线时尚精品店:The Way
2019/12/21 全球购物
农民工创业典型事迹
2014/01/25 职场文书
计算机专业毕业生自荐信范文
2014/03/06 职场文书
北京离婚协议书范文2014
2014/09/29 职场文书
六年级语文下册教学计划
2015/01/22 职场文书
银行客户经理培训心得体会
2016/01/09 职场文书
家访教师心得体会
2016/01/23 职场文书
为什么node.js不适合大型项目
2021/04/28 Javascript
电脑开机弹出documents文件夹怎么回事?弹出documents文件夹解决方法
2022/04/08 数码科技
JavaScript架构localStorage特殊场景下二次封装操作
2022/06/21 Javascript