通过Javascript代码单击HTML表单的提交按钮

时间:2011-03-06 15:24:27

标签: javascript button automation click submit

我对WEB问题不太了解,所以请随时询问我是否遗漏了任何细节。

有一个我经常访问的网站,它要求用户每次访问时都要登录。对于本网站的登录页面,我正在尝试写下一个会自动登录的用户脚本。

我设法填写表单字段,但不知道如何通过JavaScript单击提交按钮。以下是原始登录代码的精简版本。如何在此代码中自动单击此提交按钮?

<div id="start">
    <div id="header">
        <div id="login">
            <form id="loginForm" name="loginForm" method="post" action="#">
                // ...
                <input type="submit" id="loginSubmit" onclick="changeAction('submitInput','loginForm');document.forms['loginForm'].submit();" value="Log in" />
                // ...
            </form>
        </div>
    </div>
</div>

3 个答案:

答案 0 :(得分:31)

提交表单的一般方法是在表单上调用submit(),如krtek的回答所述。

但是,如果由于某种原因需要实际点击提交按钮(您的代码取决于提交按钮的名称/值是否已发布),您可以单击提交按钮本身,如下所示:

document.getElementById('loginSubmit').click();

答案 1 :(得分:11)

document.getElementById('loginSubmit').submit();

或使用与onclick处理程序相同的代码:

changeAction('submitInput','loginForm');
document.forms['loginForm'].submit();

(尽管onclick处理程序有点愚蠢:document.forms['loginForm']可以替换为this。)

答案 2 :(得分:6)

你可以这样做:

document.forms["loginForm"].submit()

但是这不会调用按钮的onclick操作,因此您需要手动调用它。

请注意,您必须使用表单的name而非id才能访问该表单。