使用javascript为谷歌chrome扩展插件将文本插入文本区域

Inserting text into textarea with javascript for google chrome extension

本文关键字:文本 插入文本 区域 插件 扩展 javascript 谷歌 chrome 使用      更新时间:2023-09-26

我正在尝试扩展现有googlechrome扩展的功能。使用Wrike-googlechrome扩展,我的目标是添加一个(或多个)按钮,它将向描述字段(文本区域)添加一些文本。所需的效果是,如果用户单击"添加模板"按钮,代码/文本将插入到id="description"的文本区域,该区域是Wrike chrome扩展的本地代码。下面你会发现一些我一直在使用的代码。

这是表单的描述部分。位于createTask.html 中

<div class="main-description main-row">
    <textarea placeholder="Click to add description" id="description" class="main-description-text"></textarea>
</div>

这是我创建的按钮,它将启动将文本添加到文本区域:

<span class="btn m-green btn-addtemp" id="link">Add Template</span>

在template.js中(它被正确地链接为createTask.html中的外部.js文件:

function insertText(text) {
    document.getElementById("description").innerHTML = text;
}
document.addEventListener('DOMContentLoaded', function() {
    var link = document.getElementById('link');
    link.addEventListener('click', function() {
        insertText('Sample text here');
    });
});

我可以使用此代码将"Sample text here"插入到ID为的div中,但无法将其插入到ID=description的文本区域中。如有任何帮助,我们将不胜感激,如有必要,我非常乐意提供更详细的信息。谢谢

试用element.value:

function insertText(text) {
    document.getElementById("description").value= text;
}

要插入文本区域,请使用值属性:

function insertText(text) {
    document.getElementById("description").value= text;
}

而不是

function insertText(text) {
    document.getElementById("description").innerHTML = text;
}

"这将向描述字段(文本区域)添加一些HTML表和文本。",这是不可能的,文本区域不能包含HTML。