【问题标题】:Moving Sharepoint 2010 List Item from one folder to another folder将 Sharepoint 2010 列表项从一个文件夹移动到另一个文件夹
【发布时间】:2017-05-27 02:28:23
【问题描述】:

所以我试图将列表项从一个文件夹移动到另一个文件夹。我尝试使用我找到的这段代码(代码源的链接如下。)。我不断收到“价值不在预期范围内”。错误,我不知道为什么我得到它。有人可以向我解释这个问题。谢谢!

var listTitle = "Requests"; //list title
var itemId = 1;  //list item id
var targetFolderUrl = "/Lists/Requests/Archive";  //target folder server relative url

var ctx = SP.ClientContext.get_current();
var list = ctx.get_web().get_lists().getByTitle(listTitle);
var item = list.getItemById(itemId);
ctx.load(item,['FileRef','FileDirRef']);
ctx.executeQueryAsync(
   function(){
       var fileUrl = item.get_item('FileRef');
       var file = ctx.get_web().getFileByServerRelativeUrl(fileUrl);
       var targetfileUrl = fileUrl.replace(item.get_item('FileDirRef'),targetFolderUrl); 
       file.moveTo(targetfileUrl, SP.MoveOperations.overwrite);
       ctx.executeQueryAsync(
          function(){
             console.log('List item has been moved');   
          },
          logError
       )
   },
   logError);


function logError(sender,args){
      console.log(args.get_message()); 
}

这是我的实际代码。

var targetFolderUrl = "/Lists/" + COMM.PROPERTY.SUSAR.LIST + "/ProductID_64";  //target folder server relative url

            var ctx = SP.ClientContext.get_current();
            var list = ctx.get_web().get_lists().getByTitle(COMM.PROPERTY.SUSAR.LIST);
            var item = list.getItemById(66);
            ctx.load(item, ['FileRef', 'FileDirRef']);
            ctx.executeQueryAsync(
               function () {
                var fileUrl = item.get_item('FileRef');
                var file = ctx.get_web().getFileByServerRelativeUrl(fileUrl);
                var targetfileUrl = fileUrl.replace(item.get_item('FileDirRef'), targetFolderUrl);
                file.moveTo(targetfileUrl, SP.MoveOperations.overwrite);
                ctx.executeQueryAsync(
                   function () {
                    console.log('List item has been moved');
                   },
                   logError
                )
               },
               logError);


            function logError(sender, args) {
                console.log(args.get_message());
            }

How to move list item into folder in Sharepoint online

【问题讨论】:

    标签: javascript sharepoint-2010


    【解决方案1】:

    如果您想在没有代码的情况下执行此操作,您可以使用 2010 工作流程。如果当前项目等于 X,则将当前项目中的项目复制到 NewList,然后删除当前项目中的项目。请务必选择 2010 工作流程而不是 2013。此外,您可能需要在创建或更改新项目时设置为触发器。我有一个查看参数的接收列表,并根据参数将其发送到许多潜在列表之一;所以我将其设置为已创建或已更改。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-10-25
      相关资源
      最近更新 更多