return false不能终止这个函数的执行de 解决办法
2017-04-13 09:44
232 查看
<button type="button" onclick="submitForm">提交表单</button> //如果这个button写在form里面,并且没有写button的type就可能导致点击这个按钮就提交表单。即使你不是想按这个按钮就提交。所以必须把type写出来。然后再js里面操作。
function submitForm(){
var datas=$(".datatext1") ;
var flag = true; //定义一个标记来识别
$.each(datas, function(){
var textdata=$(this).attr('value');
if (isNaN(textdata)){
alert('请填写数字');
flag = false;
return false;
}
});
if(flag){
document.getElementById('form1').submit();
}
}
另一种遇到的问题就是。再执行一个click事件中有方法,如果这个方法return false就不往下面执行了。
$(".btn").click(function(){
var password=$("#pass").val();
var email=$("#email").val();
validatePassword(password);
//如果这里面返回的false。也就是验证没有通过。就不往下执行下一个验证validateEmail(email)啦。但是这样写根本实现不了啊。因为函数内部返回false。只能是停止该函数,但是整个click事件并没有结束。
解决办法:
if(!validatePassword(password)){return }
validateEmail(email);
})
function validatePassword(password) {
if (password.length == 0) {
alert( "请填写密码了!");
return false;
}
if (password.length < 6) {
alert( "密码不能小于6位!");
return false;
}
function
validateemail(email){
if (email.length == 0) {
alert( 请填写邮箱!");
return false;
}
})
function submitForm(){
var datas=$(".datatext1") ;
var flag = true; //定义一个标记来识别
$.each(datas, function(){
var textdata=$(this).attr('value');
if (isNaN(textdata)){
alert('请填写数字');
flag = false;
return false;
}
});
if(flag){
document.getElementById('form1').submit();
}
}
另一种遇到的问题就是。再执行一个click事件中有方法,如果这个方法return false就不往下面执行了。
$(".btn").click(function(){
var password=$("#pass").val();
var email=$("#email").val();
validatePassword(password);
//如果这里面返回的false。也就是验证没有通过。就不往下执行下一个验证validateEmail(email)啦。但是这样写根本实现不了啊。因为函数内部返回false。只能是停止该函数,但是整个click事件并没有结束。
解决办法:
if(!validatePassword(password)){return }
validateEmail(email);
})
function validatePassword(password) {
if (password.length == 0) {
alert( "请填写密码了!");
return false;
}
if (password.length < 6) {
alert( "密码不能小于6位!");
return false;
}
function
validateemail(email){
if (email.length == 0) {
alert( 请填写邮箱!");
return false;
}
})
相关文章推荐
- 一个button同时执行多个有返回值的函数的解决方法(return false; or return true;)
- SyntaxError: Illegal return statement IE浏览器中'return' 语句在函数之外,不能return解决办法
- PHP Json函数不能处理中文的解决办法
- C# WinForm webBrowser 内嵌网页的按钮的OnClientClick事件的return false 在webBrowser中绑定onclick事件后 失效 的变通解决办法
- “不能执行已释放的Script代码”错误的原因及解决办法
- 写oracle行级触发器时,不能操作本表,报"表 *** 发生了变化,触发器/函数不能读"的错误的解决办法
- sqlserver2000 执行sp_helpdb时报不能插入空的错误--解决办法
- 页面跳转用 window.location.href 在火狐下不能执行 解决办法
- Android adb logcat cmd 中文乱码 ----- bat批处理文件不能执行 -- 问题的解决办法
- JS中setInterval、setTimeout不能传递带参数的函数的解决办法
- JS中setInterval、setTimeout不能传递带参数的函数的解决办法
- “不能执行已释放的Script代码”错误的原因及解决办法
- 出现“不能执行已释放的Script代码”错误的原因及解决办法
- php程序中不能使用mb_开头的函数解决办法
- JS中setInterval、setTimeout不能传递带参数的函数的解决办法
- JS中setInterval、setTimeout不能传递带参数的函数的解决办法
- defer属性 指示JS执行时间 Internet Explorer无法打开Internet站点......已终止操作 原由 解决办法
- JavaScript出现“不能执行已释放的Script代码”错误的原因及解决办法
- C# WinForm webBrowser 内嵌网页的按钮的OnClientClick事件的return false 在webBrowser中绑定onclick事件后 失效 的变通解决办法
- PL/SQL命令窗口里,过程,包,触发器等不能执行的解决办法