触发器2在onclick事件上起作用

时间:2011-06-30 07:51:28

标签: javascript

我在按钮的onclick事件上调用2个函数,第一个函数用于检查表单验证,下一个函数用于隐藏表单当且仅当验证为真时。但是这里的问题是,当我单击Button时,两个函数都被同时调用,并且尽管验证是错误的形式被快速隐藏。任何解决方案都会有所帮助。致谢

       <p><input type="button" name="send" value="Hide Entries" onclick="validate(),hide();"></p>

2 个答案:

答案 0 :(得分:2)

使用hide函数

调用validate函数
function validate()
{
   //other validation code
   hide();
}

答案 1 :(得分:1)

  

这两个功能同时被称为

不,他们不是,浏览器上的JavaScript是单线程的(禁止使用web workers)。它们被一个接一个地调用,因为如果hide返回false,你没有做任何事情来告诉解释器不要运行validate函数。

最小的改变是:

<p><input type="button" name="send" value="Hide Entries" onclick="if (validate()){hide();}"></p>

...如果您希望仅在hide返回真值时才调用validate


偏离主题(略):更大的变化是将JavaScript逻辑移出HTML标记并转换为正确的脚本。建议阅读unobtrusive JavaScript。但上述内容应与您当前的结构一致。