您的位置:首页 > Web前端 > JavaScript

Content Editor Webpart(三)使用JSOM

2015-03-20 10:21 232 查看
JSOM是SharePoint 提供的一种客户端API。开发人员只需要使用Javescript,就可以实现和SharePoint的交互,非常方便。

首先按照 (Content Editor Webpart(一)引用JQuery) 中的说明,引入JQuery。然后在Content Editor中添加代码。

比如要获取site的title 和description。

function retrieveWebSite(siteUrl) {
    var clientContext = new SP.ClientContext(siteUrl);
    this.oWebsite = clientContext.get_web();

    clientContext.load(this.oWebsite);

    clientContext.executeQueryAsync(
        Function.createDelegate(this, this.onQuerySucceeded), 
        Function.createDelegate(this, this.onQueryFailed)
    );
}


和Server OM不同的是,客户端OM,必须要先调用Load方法,再调用execute方法,才去与服务器交互。executeQueryAsync方法,定义了两个事件,一个是处理成功的情况,一个处理失败的情况。

比如,成功情况的处理函数为:

function onQuerySucceeded(sender, args) {
    alert('Title: ' + this.oWebsite.get_title() + 
        ' Description: ' + this.oWebsite.get_description());
}


完成的代码如下:

<div style="height: 200px;">
<script type="text/javascript" src="/sites/apps/Style%20Library/jquery-1.10.2.min.js"></script><script>



function retrieveWebSite(siteUrl) { var clientContext = new SP.ClientContext(siteUrl); this.oWebsite = clientContext.get_web(); clientContext.load(this.oWebsite); clientContext.executeQueryAsync( Function.createDelegate(this, this.onQuerySucceeded), Function.createDelegate(this, this.onQueryFailed) ); }
function onQuerySucceeded(sender, args) { alert('Title: ' + this.oWebsite.get_title() + ' Description: ' + this.oWebsite.get_description()); }
function onQueryFailed(sender, args) {
alert('Request failed. ' + args.get_message() +
'\n' + args.get_stackTrace());
}
</script>
<button id="#getInfo" onclick="retrieveWebSite(‘https://server/sites/site/internal’)">Get Site Info </button></div>


做完之后的效果:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: