JavaScript OnBlur事件阻止提交HTML表单

时间:2009-04-13 01:56:05

标签: javascript forms javascript-events form-submit onblur

考虑以下形式:

<form action="/a" method="post"> 
    <input name="x" type="text" onblur="myonblur(e)" />
    <input name="y" type="text" />
    <input name="submit" type="submit" value="Submit" />
</form>

当焦点位于名称为“x”的元素上并且用户按下提交按钮时,onblur事件将触发,但不提交表单。如果我的表单中有onblur事件,有没有办法让提交按钮按预期工作?

2 个答案:

答案 0 :(得分:3)

考虑优化onBlur()方法,以便花费更少的时间来运行。如果您的表单无法提交,可能是因为onBlur()太长并导致浏览器无法执行任何操作。

您也可以使用onChange()方法代替onBlur()。这对你来说可能更好。

答案 1 :(得分:0)

尝试添加

return true;

调用你的onBlur函数后。您面临的问题可能是由于事件处理程序的“返回错误”预防。