无法使用tampermonkey单击表单按钮

时间:2015-05-06 12:09:44

标签: javascript jquery tampermonkey

我正在制作一个tampermonkey / greasemonkey脚本,该脚本会在页面加载时单击网页上的按钮。这是表单的代码。

<form>
    <input type="hidden" name="xsrf_token" value="497903b8" />
    <input type="hidden" name="do" value="" />
    <input type="hidden" name="code" value="1APdij" />
    <div data-do="entry_insert" class="sidebar__entry-insert">
        Click Here
        <span class="sidebar__entry__points">(3P)</span>
    </div>
    <div class="sidebar__entry-loading is-disabled is-hidden">
        <i class="fa fa-refresh fa-spin"></i>
        Please wait...
    </div>
</form>

这是我试图用来单击页面上的按钮的一个衬垫。当页面加载并执行一个衬垫时,它不会做任何事情。我也尝试过submit()。

$('form').off().click();

任何帮助都会很棒。感谢。

1 个答案:

答案 0 :(得分:1)

而不是表单,在触发点击事件时定位实际按钮。

$('form [data-do="entry_insert"]').click()

如果该表单的JS正在监听表单,那么触发表单的submit也会有效。

非jQuery版本:

var target = document.querySelectorAll('form [data-do="entry_insert"]')[0];
var e = new MouseEvent('click', {
   'view': window,
   'bubbles': true,
   'cancelable': true
});
target.dispatchEvent(e);