【问题标题】:Is there a way to add a list item to a specific place in google docs?有没有办法将列表项添加到谷歌文档中的特定位置?
【发布时间】:2021-12-26 01:41:41
【问题描述】:

我有一个脚本,可以在提交表单时创建 google 文档的副本,并且具有基于提交的表单的查找和替换功能。目前,我有一个清单中的项目列表,我找到并替换了这些项目,但我想将其转移到追加,这样我就不会在列表中留下多余的项目而没有被替换。

目前脚本运行时会填写可以填写的内容:

工作流程

  1. 来自谷歌表单的示例流程 1
  2. 来自谷歌表单的示例流程 2
  3. {{process3}}
  4. {{process4}}
  5. {{process5}}

如果可能的话,我希望能够避免查找和替换,而是能够追加到此列表中。我的问题是该列表位于特定位置,我想调用它的索引,然后在该位置追加。我对编写任何类型的代码都很陌生。

【问题讨论】:

  • 我必须为我糟糕的英语水平道歉。不幸的是,我无法理解您的Processes to work。我可以问你问题的细节吗?
  • 当然! “工作流程”只是谷歌文档中用于标记列表的 PARAGRAPH
  • 您是否尝试实施建议的解决方案?
  • 是的。我能够使用我在文档上的索引来使用 body.insertListItem 。我现在的另一个问题是,有没有办法将孩子附加到列表项?例如: 1. 列表项 a.我要插入/附加的列表项
  • 请提供足够的代码,以便其他人更好地理解或重现问题。

标签: google-apps-script


【解决方案1】:

以下是如何在文档中现有列表末尾追加新项目的示例:

function append_item_at_the_end_of_a_list() {
  var body = DocumentApp.getActiveDocument().getBody();
  var list = body.getListItems().pop();        // get the last list item
  var index = body.getChildIndex(list)+1;      // get index of the item
  body.insertListItem(index, 'New list item'); // append a new list item at the end
}

代码假设文档只有一个列表,或者想要的列表是最后一个。如果您有多个列表并且修改后的列表不是最后一个,则需要更复杂的解决方案。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-07
    • 2020-09-06
    • 1970-01-01
    相关资源
    最近更新 更多