【问题标题】:"It is necessary to detach the element" error in google docs script谷歌文档脚本中的“有必要分离元素”错误
【发布时间】:2014-10-17 22:45:54
【问题描述】:

当我尝试将段落从一个文档复制到另一个文档时,出现意外错误:

需要分离元素

这是什么意思?我做错了什么?

function test_copy_paragrahps() {
  var final = 'final';
  var doc1 = get_doc('', final);
  var doc2 = create_doc_in_path('', final+'test');
  var body1 = doc1.getBody();
  var body2 = doc2.getBody();
  var par1 = body1.getParagraphs();
  for (var i=0;i<par1.length;i++) {
    body2.insertParagraph(i, par1[i]);
  }
}

这是视频http://youtu.be/1WdCD5ATiYw

附:您不能提及 get_doc 和 create_doc_in_path 实现。两者都返回 Document 对象。

【问题讨论】:

    标签: javascript google-apps-script paragraphs


    【解决方案1】:

    您试图插入一个已经有父正文的段落。您需要先创建段落的分离副本,然后才能插入它。

    请参阅文档中提到分离段落的this 部分。

    我相信这会修复错误:

    function test_copy_paragrahps() {
      var final = 'final';
      var doc1 = get_doc('', final);
      var doc2 = create_doc_in_path('', final+'test');
      var body1 = doc1.getBody();
      var body2 = doc2.getBody();
      var par1 = body1.getParagraphs();
      for (var i=0;i<par1.length;i++) {
        body2.insertParagraph(i, par1[i].copy()); //--- copy()
      }
    }
    

    【讨论】:

    • 如果您不想制作副本(例如,您想将其移动到别处?)如何分离(例如,您想将其移动到其他地方?)我可以发誓某处有分离功能,但是当我尝试使用它时在它告诉我它找不到函数的元素上。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多