值未分配给document.getElementsByName返回的input元素

时间:2015-09-15 06:58:33

标签: javascript google-chrome-extension

我可以轻松设置值,下面是代码:

<input class="valueinput" type="text" name="Text_Value" size="12" value="" onfocus="select()" maxlength="6">

sync.set工作正常。我希望sync.get函数在输入字段如此

的其他域上工作
function get() {
    chrome.storage.sync.get("data", function(items) {
        if (!chrome.runtime.error) {
            console.log(items);
            var textarea = document.getElementsByName("Text_Value");
            textarea.value = items.data;
        }
    });
}
get();

如您所见,没有分配ID。我没有在上面的文本框中获取存储的值。以下是我正在使用的获取代码。

{{1}}

输入框没有任何ID。请帮忙。

1 个答案:

答案 0 :(得分:0)

document.getElementsByName返回一个类似于数组的NodeList集合,而不是单个元素,例如,当debugging the code逐步执行时,您可以看到。

var textarea = document.getElementsByName("Text_Value")[0];
if (textarea) { // always check if the element exists!
    textarea.value = items.data;
}