为什么 button.click() 在我的脚本中不起作用?

Why button.click() is not working in my script?

我在 JavaScript 中有一个脚本,在代码的一部分中创建一个 'virtual button' 并自动按下它。

此按钮不在HTML页面中,仅用于存储一个link,在脚本的某个位置必须点击。这是代码:

var virtualButton = document.createElement("button");
var linkText = document.createTextNode("assign to relevant user");
virtualButton.appendChild(linkText);
virtualButton.title = "assign to relevant user";
virtualButton.href = link;
document.body.appendChild(virtualButton);

virtualButton.click();

我觉得一切都很好,代码仍然没有真正点击按钮。

我是不是遗漏了什么?

<button/> elements do not have an .href attribute. You most likely want to use an anchor (<a/>) element。见下文:

var virtualButton = document.createElement("a");
var linkText = document.createTextNode("assign to relevant user");
virtualButton.appendChild(linkText);
virtualButton.title = "assign to relevant user";
virtualButton.href = "https://www.google.com";
document.body.appendChild(virtualButton);

virtualButton.click();

(它实际上不会导航,因为它在沙盒中 <iframe/>,但您会看到它尝试这样做)。