我有3个javascript函数:validateClk()
,validateAmPm()
和getClks()
并且在发生两个事件时,它们将按以下方式执行:OnChange
-执行validateClk()
和validateAmPm()
OnClick
-执行getClks()
(getClks()
返回布尔值)
所有3个函数都可以正常运行,但是问题是,在getClks()
完成执行并返回布尔值之后,下一个函数postClocks()
无法运行。我非常确定postClocks()
的代码也是正确的。如果我不对getClks()
使用return语句,则getClks()
函数将无法正常工作。
请帮忙 :(
<script type='text/javascript'>
function validateClk() {
....
var clks = clocks.value;
if (clks == "") {
alert('Enter time');
}
else { ... }
}
</script>
<script type='...'>
function validateAMPM() {
...
var ampm= ap.value;
if (ampm=="") {
alert('Enter am or pm');
}
}
</script>
<script type='text/...'>
function getClks() {
var clks= clock.value;
var ampm= ap.value;
if (clks==" && ampm="") {
alert('Enter time and am/pm');
return false;
}
else { ... }
return true;
}
</script>
<... onChange="validateClk(); validateAmPm();" />
<... button label="Submit" onClick="return getClks(); postClocks(); return false;" />
最佳答案
让所有自定义函数返回boolean
然后将onclick
事件更改为此:
onClick="if(!getClks() || !postClocks()) return false;"
假设您不想在无效的情况下继续
关于javascript - Javascript功能,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4994436/