我在JavaScript方面很弱。 实际上我使用两个函数作为onclick:
onClick="check('owfy_email','owfy_email2'); return checkval() ;"
check(a,b)
功能是检查电子邮件地址和验证电子邮件地址字段是否具有相同的值,checkval()
函数查找其他错误
对于函数check(a,b)
我使用的代码如下:
<script type="text/javascript">
function check(a,b) {
var obja = document.getElementById(a)
var objb = document.getElementById(b)
if (obja.value==objb.value) {}
else {alert("The e-mail fields aren't the same!!")}
}
</script>
如果字段值不匹配,则弹出错误消息。
但是,在弹出消息之后,下一个函数执行并形成下一页的进程会发生什么。我希望如果弹出消息,那么用户可能有机会再次输入电子邮件,表单可能只在两个电子邮件字段相同时处理
注意:我无法访问checkval()
功能,但可以轻松更新check(a,,b)
功能。
答案 0 :(得分:1)
你需要从checkval()函数返回false,或者只是在结尾处返回false:
onClick="check('owfy_email','owfy_email2'); return checkval(); return false;"
答案 1 :(得分:1)
验证失败时,使第1个函数(check)返回false。 在onclick事件中,执行此操作,
Jul 27 00:13:18 Rastes systemd[1]: systemd-tmpfiles-clean.service: main process exited, code=exited, status=1/FAILURE
Jul 27 00:13:18 Rastes systemd[1]: Failed to start Cleanup of Temporary Directories.
Jul 27 00:13:18 Rastes systemd[1]: Unit systemd-tmpfiles-clean.service entered failed state.
Jul 28 00:13:58 Rastes systemd[1]: systemd-tmpfiles-clean.service: main process exited, code=exited, status=1/FAILURE
Jul 28 00:13:58 Rastes systemd[1]: Failed to start Cleanup of Temporary Directories.
Jul 28 00:13:58 Rastes systemd[1]: Unit systemd-tmpfiles-clean.service entered failed state.
答案 2 :(得分:0)
作为特洛伊和...的替代品。我认为你应该稍微修改你的check()
功能
并从checkval()
函数
check()
函数
function check(a,b) {
var obja = document.getElementById(a)
var objb = document.getElementById(b)
//so modify the function so that
if(some_value)
{
//call the checkval() function
var r = checkval();
//check the return type of the checkval() function
if(r){return true;}
else
return false;
}
if (obja.value==objb.value) {}
else {
alert("The e-mail fields aren't the same!!");
}
}