onBlur和onclick冲突的问题

来源:百度知道 编辑:UC知道 时间:2024/05/29 14:00:53
一个表单提交页面,每个text都有onBlur执行js方法检查格式及用ajax检查其他问题。然后button按钮通过onclick来执行submit操作。现在的问题是:当光标还在某个text时,直接点击button提交,会操作失败。
这里根据该text内容错误与否分四种情况,只有如下情况出错:
text内容原来检查过是错误的,改成正确后,直接点提交,button的js方法没有执行。
请问为什么会这样?该如何解决?如果我还是要用onblur的话

在按扭上加个onmouseover函数,里面的代码是把焦点移到按扭上,这样很合乎情理,顺便加个鼠标放到提交按扭上时按钮样式变化的特效就更完美了。

可以在onclick时检查text内容,缺点:如果text比较多......

你能不能把部分相关的代码,帖出来~?

你可以在button的click事件上加一步,在submit之前把焦点转到其它地方(如表单之外).这样text就能执行onBlur方法.

你在 <form> 四周画四个透明层(style 透明或者用透明 gif、png),在层上设定 onmouseover 执行表单检查即可解决冲突。

如果你想按照你的思路强行解决问题也可以,但是在 Firefox 下我保证会一团糟,呵呵。

出错原因:JS是单线程的语言,所以造成出错
解决方案:在submit执行的操作中调用"onBlur所执行的js方法检查"
也可以在onBlur执行js方法检查中调用submit所调用的方 法