示范如何以异步AJAX方式访问SharePoint数据

简介:

很多人都希望在SharePoint页面上能让某个部分能"局部刷新",也就是说,这个部分的内容在刷新的时候,不会造成整个页面的Postback。为了快速演示大致的实现方法,在周末的时候做了一个用来示范的项目,它实现的功能很简单: 

1、提供给用户一个下拉框,列出当前网站所有的文档库,用户可以选择一个文档库,并载入此文档库的文件夹架构。 
2、文件夹结构通过一个TreeView来进行展现。 
3、当用户在TreeView上点击一个文件夹节点时,将文件夹所包含的文件显示在一个Grid Table中。 
4、在Grid Table中,包括了分页、排序、搜索等功能。 
5、上面的所有从SharePoint系统中载入数据的操作,都不会引发页面刷新,而是通过异步AJAX方式从SharePoint系统中获取所需的数据。载入数据的过程中,用户的页面操作不会被打断。 

这个示范的实现思路大致如下: 

1、为了能让SharePoint系统对外发布所需的数据,需要在服务器上创建几个定制的接口。虽然SharePoint内置了Web Services接口,但其中不一定会包含我们所需的接口方法。在这个示范中,为了简单起见,我直接创建了几个.ashx Http Handler,客户端的代码可以通过直接访问这几个.ashx文件,来调用服务器端的接口。 

2、这几个.ashx文件会以JSON格式纯文本方式,将客户端请求的数据返回。选择JSON格式的理由是,它足够简单且通用,在这里示范的场景中,其表现力足够用了。另外一个选择JSON的理由是,我打算在页面上使用jQuery来调用服务器端的接口,而jQuery对JSON格式的数据有很好的处理能力。 

3、客户端页面上的展现,没有创建自定义Web Part,而是用HTML + JS的方式,来访问服务器端的服务接口,获取到所需数据,并将界面呈现给用户。简单来说,就是AJAX啦。我选择使用jQuery,并利用了jQuery异步AJAX的能力,实现异步请求、无刷新、不阻塞用户页面操作的效果。 

4、为了方便快速的实现TreeView、Grid Table、Dialog等界面效果,我直接找了三个jQuery插件:TreeViewDataTablesFancyBox。 

为了帮助大家更容易了解这些思路,我录了一个简短的视频。 

 

下载WMV格式视频 
下载示范项目源码 

在SharePoint 2010中,其内置提供的Client OM包含了ECMAScript(JavaScript)类库,这样开发人员可以直接使用这些类库,通过页面脚本的方式访问SharePoint 2010网站数据。 

Enjoy SharePoint !





本文转自 kaneb0y 51CTO博客,原文链接:http://blog.51cto.com/kaneboy/285912,如需转载请自行联系原作者

目录
打赏
0
0
0
0
235
分享
相关文章
PHP与Ajax在Web开发中的交互技术。PHP作为服务器端脚本语言,处理数据和业务逻辑
本文深入探讨了PHP与Ajax在Web开发中的交互技术。PHP作为服务器端脚本语言,处理数据和业务逻辑;Ajax则通过异步请求实现页面无刷新更新。文中详细介绍了两者的工作原理、数据传输格式选择、具体实现方法及实际应用案例,如实时数据更新、表单验证与提交、动态加载内容等。同时,针对跨域问题、数据安全与性能优化提出了建议。总结指出,PHP与Ajax的结合能显著提升Web应用的效率和用户体验。
125 3
Python编程—Ajax数据爬取(二)
Python编程—Ajax数据爬取(二)
170 0
layui 穿梭框transfer组件 数据data用ajax来获取
layui 穿梭框transfer组件 数据data用ajax来获取
333 2
Ajax进行异步交互:提升Java Web应用的用户体验
Ajax 技术允许在不重载整个页面的情况下与服务器异步交换数据,通过局部更新页面内容,极大提升了 Java Web 应用的响应速度和用户体验。本文介绍 Ajax 的基本原理及其实现方式,包括使用 XMLHttpRequest 对象发送请求、处理响应数据,并在 Java Web 应用中集成 Ajax。此外,还探讨了 Ajax 如何通过减少页面刷新、实时数据更新等功能改善用户体验。
118 3
|
11月前
|
PHP
php+ajax传file文件数据
php+ajax传file文件数据
79 0
JS设置Ajax为同步或异步
JS设置Ajax为同步或异步
178 0

热门文章

最新文章

AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等