在提交之前取消选择表单输入并等待功能

时间:2010-06-02 19:54:20

标签: javascript jquery forms submit infinite-loop

我有一个带有输入字段的表单,用户输入唯一标识符。然后我有一些jQuery代码,当用户离开输入字段(模糊)时,它会取出有关该部件的详细信息并填充页面上的某些字段。问题是如果用户在移出输入字段之前单击提交按钮,则jQuery代码永远不会有机会加载数据并填充必要的字段。这是最好的方法吗?我想过可能将焦点设置为body然后有一个无限循环来持续检查页面,直到所有应填写的字段都被填入但我觉得某种基于事件的解决方案会比不可预测的无限循环更好。有什么想法吗?

2 个答案:

答案 0 :(得分:4)

为表单提供onsubmit个活动。

除非正确填充所有表单字段,否则请将该事件返回false

jQuery中:

$("#formname").submit(function()
 { if (condition_not_met) return false; });

这将阻止表单提交,直到所有内容都到位。

禁用JavaScript会阻止阻塞,但是当您使用Ajax获取正确的字段时,可能无关紧要。

答案 1 :(得分:0)

我猜你在模糊功能中正在进行ajax调用? 你可以禁用提交按钮(在页面加载或模糊时),然后在ajax回调中启用它吗?