如何在javascript中自动提交表单?

时间:2011-09-15 12:12:28

标签: javascript html forms onchange

我有一个带有输入文本字段的表单,每隔几秒就导入一次数据并在表单字段中显示它,让我们说:

<input name="code" id="code" type="text" size="64" maxlength="128" />

和一个提交按钮,我的表单有formname form1。 我希望在表单字段中的数据更改后立即单击提交按钮。 我确实尝试过以下操作。在标题中我添加了以下javascript:

<SCRIPT LANGUAGE="javascript">
function send_data()
{
document.form1.submit();
}
</SCRIPT>

并在表格上:

<input name="code" id="code" type="text" size="64" maxlength="128" onchange="send_data();" />

但它没有用..

有任何帮助吗?

由于

1 个答案:

答案 0 :(得分:4)

这样的事情会起作用:

<form action="#">
    <input type="" id="input" />
    <button type="submit"></button:>
</form>

<script>
function send_data() {
    document.forms[0].submit();
}

window.onload = function(){
    var input = document.getElementById('input');
    input.onchange = send_data;
}
</script>

但我要补充几点:

  1. 我假设页面上只有一个表单。您可以更安全地为表单分配和ID,并使用getElementById并引用该表单而不是document.forms[x]
  2. 更改事件只会在你失去对输入的关注之后才会发生,我可能想要你做什么?只是确定它的预期行为
  3. 在不知道为什么需要这样做的情况下,我会注意到它可能会让用户非常讨厌,因为提交会触发新的页面加载。您可能最好通过ajax进行提交,以免破坏用户的浏览。如果你这样做,我强烈建议使用JS库来处理这个问题。