gpt4 book ai didi

javascript - 将换行符作为变量传递给 GAS 中的 insertText

转载 作者:行者123 更新时间:2023-12-03 04:56:42 25 4
gpt4 key购买 nike

我正在使用应用程序脚本侧边栏插入文本,我在其中输入需要在开头附加一些文本,然后再次输入后附加。

附加文本将由侧边栏中的文本框确定。

我将值作为 formObject 传递

function sendform(){
var f = document.forms[0].elements;
var data = { "mytext": f[0].value }
google.script.run.withSuccessHandler(ready).withFailureHandler(onFailure).processForm(data);
}

这是应用程序脚本代码。

    function processForm(fO)
{
var body = DocumentApp.getActiveDocument().getBody();
body.editAsText().insertText(0, "\n\nsometext");
// this will perfectly insert the newlinenewlinesometext to the document

body.editAsText().insertText(0, fO.mytext);
// this will insert \n\nsometext which is wrong
}

我尝试使用encodeURIComponentdecodeURIComponent,但仍然是同样的问题。

有什么建议吗?

最佳答案

您可能需要首先检查 Structure of a document 中给出的规则其中您会发现树显示哪些文本元素可以插入以及哪些元素只能就地操作。

如上所述,Apps 脚本中的文档服务只能插入某些类型的元素。如果您在树中发现尝试插入允许的元素,请参阅 Class Text了解可以使用的方法来插入文本,例如 insertText(offset, text) .

以下是插入文本的示例代码:

var body = DocumentApp.getActiveDocument().getBody();

// Use editAsText to obtain a single text element containing
// all the characters in the document.
var text = body.editAsText();

// Insert text at the beginning of the document.
text.insertText(0, 'Inserted text.\n');

// Insert text at the end of the document.
text.appendText('\nAppended text.');

// Make the first half of the document blue.
text.setForegroundColor(0, text.getText().length / 2, '#00FFFF');

关于javascript - 将换行符作为变量传递给 GAS 中的 insertText,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42405327/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com