单击其中一个按钮的Javascript

时间:2016-09-29 21:49:33

标签: javascript greasemonkey

表单中有两个按钮,我想使用GreaseMonkey在页面加载时自动单击其中一个按钮。这两个按钮是:

<td rowspan="2"><input class="first action" name="first" type="submit" value="First Action" style="font-size: 10pt;" /></td>
<td rowspan="2"><input class="second action" name="second" type="submit" value="Second Action" style="font-size: 10pt;" /></td>

我已尝试过以下两个代码,但两个代码都没有。第一个选择表单并尝试提交它,我收到一个错误,上面写着&#34; No Action Permitted。&#34;第二个尝试单击()按钮。

首先:

var button = document.getElementById('units_form');
window.location(button);

第二

var button = document.getElementByClassName('first action');
button.click();

1 个答案:

答案 0 :(得分:0)

首先,通用解决方案:

  • 要按类名获取元素对象,请使用document.getElementsByName("class_name")[0]。最后一部分[0]为您提供了具有此类
  • 的所有元素中的第一个
  • 要在元素上触发事件,请参阅this article on MDN。我强烈建议全部阅读。从你的帖子来看,你在阅读文章时非常懒惰。

全部放在一起:

var button_element = document.getElementsByName("button-class-name")[0];
var event_object = new MouseEvent('click', {
    'view': window,
    'bubbles': true,
    'cancelable': true
});
button_element.dispatchEvent(event_object);

此外,大多数网站都使用jQuery库,归结为:

$(".class_name").click();

请注意,这将触发具有该类名的所有元素。