Javascript:当存在测试警报消息时,行为不同

时间:2009-10-14 13:30:54

标签: javascript synchronization alert

我有一个文本框功能,如下所示

<input type="text" onkeypress="return onEnter(event,this);"
    onBlur="return chkForDBCS(this);"/>

function chkForDBCS()检查文本中是否输入了DBCS(主要用于日语字符)并抛出警告消息并清除文本框。

function onEnter()提交表单。

当我在onEnter()函数的开头有测试警告消息时,然后在onBlur上首先执行chkForDBCS()并等待直到完成以onEnter方法启动。

但是当我在onEnter中删除测试警报消息时,表单被提交(onEnter)并同时显示警告消息(来自chkforDBCS)。

但我的要求是首先检查是否使用chkForDBCS输入了DBCS char,一旦一切正常,只需要提交表单。

是否有类似同步的东西我可以用来解决上述问题。

任何人都可以帮我解决上述问题。提前谢谢。

1 个答案:

答案 0 :(得分:0)

使用onbeforesubmit事件:

<form onbeforesubmit="onBeforeSubmitHandler()" ...>

您可以从事件处理程序return false来阻止提交表单。

此外,您为什么要使用onkeypress提交表单?你没有正常的提交按钮吗?