Javascript自动表单提交

时间:2011-04-12 11:40:29

标签: javascript html

我从StackOverflow上的另一篇文章中获取了这个快速脚本,但它似乎不适用于我的表单。它只是抛出一个错误,说'对象预期'。任何人都可以帮我修复它。

<html>
<head></head>
<body onLoad="document.forms[0].submit()">
    <form name="EPDQForm" method="post" action="mypage.aspx" >
        <input name="item" type="hidden" value="data">
    </form>
</body>
</html>

编辑:

这是确切的页面代码(我删除了大部分页面代码):

<html>

    <head></head>

    <body onLoad="document.forms[0].submit()">

        <form id="myform" name="myform" method="post" action="https://secure2.mde.epdq.co.uk/cgi-bin/CcxBarclaysEpdq.e">

            <input name="epdqdata" type="hidden" value="972">
            <input name="returnurl" type="hidden" value="http://www.xxxx.co.uk/Secure/EPDQReturn.aspx">
            <input name="merchantdisplayname" type="hidden" value="xxxxxx">
            <input name="submit" type="hidden" value="purchase">
            <input name="shipping" type="hidden" value="0.00">
            <input name="baddr1" type="hidden" value="152 Smith St">
            <input name="baddr2" type="hidden" value="">
            <input name="bcity" type="hidden" value="Manchester">
            <input name="bcountry" type="hidden" value="UK">
            <input name="bpostalcode" type="hidden" value="M4 6DH">
            <input name="email" type="hidden" value="xxxx@xxxx.co.uk">
            <input name="saddr1" type="hidden" value="152 Smith St">
            <input name="scity" type="hidden" value="Manchester">
            <input name="scountyprovince" type="hidden" value="Alderney">
            <input name="scountry" type="hidden" value="UK">
            <input name="spostalcode" type="hidden" value="M4 5GG">

        </form>

    </body>
</html>

此代码显示错误。我不明白为什么。在firefox中它说:

document.forms[0].submit is not a function

2 个答案:

答案 0 :(得分:1)

好的,问题出在这一部分:输入名称=“提交”type =“hidden”value =“购买”。

提交输入与表单功能同名。 如果你用其他名称替换名称'submit'(例如submit1),那么它应该作为一个魅力。 : - )

祝你好运。

答案 1 :(得分:1)

如果您从开始onload代码中删除<body>属性,并将此代码放在结束</body>代码之前会怎样?

<script>
    var frm = document.getElementById('myform');
    if (frm) {
        frm.submit();
    }
</script>