【问题标题】:Onload submit not working加载提交不起作用
【发布时间】:2015-02-27 21:13:03
【问题描述】:

我正在尝试在页面加载时提交此表单。但由于某种原因,它不起作用。我检查了控制台是否有错误,那里似乎没有任何问题。

这是 html 和 javascript(添加了 jquery)

<script type="text/javascript">
$(document).ready(function() {
$('#new-ticket-form').submit();
});
</script>

  <form  id="new-ticket-form" action="/contact_form.html" method="post" name = "new-ticket-form"  >
        <input type="hidden" name="MAX_FILE_SIZE" value="100000000">
        <input type="hidden" name="fullname" value="JOhnny test'">
        <input type="hidden" name="order_num" value="123456">
        <input type="hidden" name="phone" value="347-489-4874">
        <input type="hidden" name="email" value="fake123@gmail.com">
        <input type="hidden" name="fromorderpage" value="yes">
        <input type="hidden" name="submit" value="Submit">
        <table>
            <tr>
                <td class="label">
                    New Ticket Subject:
                </td>
                <td class="field">
                    <select name="subject_id">
                    <option value="0">Select one ...</option>';
                    <option value="123">Confirm Delivery Appointment</option>';
                    <option value="124"> Reschedule Delivery Appointment</option>
                    </select>
                </td>
            </tr>
            <tr>
                <td class="label">
                    Summary:
                </td>
                <td class="field">
                    <input type="text" name="summary" value="This is a test disregard">
                </td>
            </tr>
            <tr>
                <td class="label">
                    Your Message:
                </td>
                <td class="field">
                    <textarea name="usr_msg" placeholder = "This is a test disregard">This is a test disregard</textarea>
                </td>
            </tr>

            <tr>
                <td class="submit" colspan="2"><input type="submit" value="Submit Ticket" name = "btn_submit">  
                </td>
            </tr>
        </table>
    </form>

【问题讨论】:

标签: javascript jquery


【解决方案1】:

删除隐藏的输入字段&lt;input type="hidden" name="submit" value="Submit"&gt; - 然后就可以了。

工作 jsFiddle:http://jsfiddle.net/3bo4rgvw/3/

【讨论】:

  • 参考见jQuery submit() documentation中的“补充说明”:Forms and their child elements should not use input names or ids that conflict with properties of a form, such as submit, length, or method.
【解决方案2】:

我有 Uncaught ReferenceError: $ is not defined。 jQuery 未定义, 但你可以使用

$(document).ready(function() {
  document.getElementsByName('btn_submit')[0].click();
});

在您的 readyState 循环中。

【讨论】:

  • 在问题的 cmets 中,OP 表示他已经包含了 jQuery 库,尽管它没有出现在他发布的问题中。此外,您的代码仍然引用 jQuery。
  • 删除“提交”输入名称更好
  • 是的,我懒得用纯 JavaScript 编写整个 readyState 循环;)
猜你喜欢
  • 2017-02-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-04-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多