Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/455.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Chrome扩展插件填充所选字段_Javascript_Google Chrome - Fatal编程技术网

Javascript Chrome扩展插件填充所选字段

Javascript Chrome扩展插件填充所选字段,javascript,google-chrome,Javascript,Google Chrome,我正在尝试构建一个非常简单的chrome扩展,用于填充页面上的selected form字段。我创建了一个git回购,代码如下: 我的问题是当我点击按钮时什么也没发生 以下是我的背景: chrome.tabs.getSelected(null, function(tab) { d = document; var formfield = d.activeElement; d.getElementById(formfield).value = Math.flo

我正在尝试构建一个非常简单的chrome扩展,用于填充页面上的selected form字段。我创建了一个git回购,代码如下:

我的问题是当我点击按钮时什么也没发生

以下是我的背景:

chrome.tabs.getSelected(null, function(tab) {
      d = document;

      var formfield = d.activeElement;
      d.getElementById(formfield).value = Math.floor(89+Math.random()*11);

});

我怀疑这与js元素选择过程有关,但我不确定。

您应该将
d.getElementById(formfield).value
替换为
formfield.value


var formfield=d.activeElement
为您获取元素,因此不需要
d.getElementById(formfield)

这不是完美的解决方案,但是迄今为止我见过的最好的解决方案

我最终使用了browser_操作而不是background,并使用chrome.tabs.executeScript来影响活动选项卡。我用当前代码更新了我的github回购协议

chrome.tabs.executeScript(null,
    {code:"var valued = Math.floor(89+Math.random()*11);var formfield = document.activeElement;formfield.value = valued"}
);

Chrome仍然无法填写表单。我怀疑这是因为我在单击扩展时取消了对表单的选择。