首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在javascript中将新项目添加到sharepoint列表

在javascript中将新项目添加到sharepoint列表
EN

Stack Overflow用户
提问于 2013-10-17 17:46:34
回答 2查看 10.2K关注 0票数 1

我想使用javascript将新项目添加到我的sharepoint列表中。我直接使用来自MSDN的代码,但它不起作用。我认为问题出在我声明的siteUrl上,因为当我像这样设置警报时:

代码语言:javascript
复制
var siteUrl = 'http://units.mil.intra/sites/DGHR/h/default.aspx';

    function createListItem() {
        alert('in function ');
        var clientContext = new SP.ClientContext(siteUrl);
        alert('before oList');
        var oList = clientContext.get_web().get_lists().getByTitle('TestPostModification');
        alert('after oList');   
        var itemCreateInfo = new SP.ListItemCreationInformation();
        this.oListItem = oList.addItem(itemCreateInfo);

        oListItem.set_item('Title', 'Item from de Hrnode!');

        oListItem.update();

        clientContext.load(oListItem);

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

    function onQuerySucceeded() {

        alert('Item created: ' + oListItem.get_id());
    }

    function onQueryFailed(sender, args) {

        alert('Request failed. ' + args.get_message() + '\n' + args.get_stackTrace());
    }

我收到第一个警报,但我没有收到alert('before oList');,所以我认为存在以下问题:

代码语言:javascript
复制
var clientContext = new SP.ClientContext(siteUrl);

有人能帮帮我吗?

ps: siteUrl在我们的内部网站上,所以你不能从你所在的地方访问它。

EN

回答 2

Stack Overflow用户

发布于 2013-10-18 16:29:13

我认为这是因为siteURL不能包含页面。所以它应该是http://units.mil.intra/sites/DGHR/h/ (它意味着你网站的根目录)。

小贴士:你可以使用web控制台来调试你的代码与Firefox或Chrome,或者你可以安装一个插件,如Firebug for Firefox。不需要使用alert()console.log()提供了更多有用的信息。

另外,原生方法很难使用,也不是很“漂亮”。如果使用jQuery对您来说不是问题,那么我建议您使用第三个库,如SPServicesSharepointPlus。例如,使用SharepointPlus时,您的代码将变为:

代码语言:javascript
复制
// if your code runs somewhere under this website, then you don't need to provide the URL
var siteUrl = 'http://units.mil.intra/sites/DGHR/h/';

$SP().list("TestPostModification", siteUrl).add({Title:"Item from de Hrnode!"}, {
  success:function(items) {
    if (items.length === 1) alert("Item created: "+items[0].ID)
  },
  error:function(items) {
    if (items.length > 0) alert("Request failed: "+items[0].errorMessage)
  }
})
票数 0
EN

Stack Overflow用户

发布于 2018-08-24 03:30:48

根据我所看到的,您应该将其用作siteUrl siteUrl = 'http://units.mil.intra/sites/DGHR/h/';

您使用的siteUrl会将其定向到一个不需要的网页。该列表位于sharepoint站点中,并且您已经具有代码中引用的列表的名称// var oList = clientContext.get_web().get_lists().getByTitle('TestPostModification');

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19423286

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档