formValidator表单验证不通过怎么也可以提交

时间:2021-08-06 18:13:18
<form name="formbind1" id="formbind1" method="post" action="#">
    <table border="0px" width="730px" cellspacing="9">
        <tr>
            <td align="right" width="105px"><span class="regtlx">邮箱/手机</span></td>
            <td width="265px"><input class="inp inw" type="text" id="username1" name="username1" value="" /></td>
            <td width="330px"><div id="username1Tip" style="width:280px"></div> </td>
        </tr>
        <tr>                                 
            <td><span class="regtlx">密码</span></td>
            <td><input class="inp inw" id="password1" type="password" name="password1"/></td>
            <td><div id="password1Tip" style="width:280px"></div></td>
        </tr>
    </table>
</form>

<script type="text/javascript">

$.formValidator.initConfig({validatorGroup:"2",formID:"formbind1",theme:"baidu",submitOnce:true,
            onError:function(msg){
                alert(msg);
            }
        });
        $("#username1").formValidator({validatorGroup:"2",onShowText:"邮箱/手机",onFocus:"用户名是您注册时使用的手机号或邮箱",onCorrect:"该用户名可以注册"}).inputValidator({min:6,max:20,onError:"请输入正确的邮箱或手机号码"})
        $("#password1").formValidator({validatorGroup:"2",onShow:"请输入密码",onFocus:"密码长度为6~20个字符",onCorrect:"密码合法"}).inputValidator({min:6,max:20,onError:"密码长度不合法,请确认"});
</script>

11 个解决方案

#1


$.formValidator.initConfig({validatorGroup:"2",formID:"formbind1",theme:"baidu",submitOnce:true,
            onError:function(msg){
                alert(msg);
return;
            }
        });

如果验证不通过,return掉看看

#2


引用 1 楼 shixitong 的回复:
$.formValidator.initConfig({validatorGroup:"2",formID:"formbind1",theme:"baidu",submitOnce:true,
            onError:function(msg){
                alert(msg);
return;
            }
        });

如果验证不通过,return掉看看

试过不行  我直接return false;他还是去提交了

#3


引用 2 楼 u011578224 的回复:
Quote: 引用 1 楼 shixitong 的回复:

$.formValidator.initConfig({validatorGroup:"2",formID:"formbind1",theme:"baidu",submitOnce:true,
            onError:function(msg){
                alert(msg);
return;
            }
        });

如果验证不通过,return掉看看

试过不行  我直接return false;他还是去提交了


测试了下,以下是测试代码
form和验证代码都是你上面提供的,然后formValidate版本是formValidator-4.1.3.js
IE8下测试,验证不通过是不提交的
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 4.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title></title>
<script src="jquery-1.4.4.min.js" type="text/javascript"></script>
<script src="formValidator-4.1.3.js" type="text/javascript" charset="UTF-8"></script>
<script type="text/javascript">
$(document).ready(function(){
$.formValidator.initConfig({validatorGroup:"2",formID:"formbind1",theme:"baidu",submitOnce:true,
            onError:function(msg){
                alert(msg);
            }
        });
        $("#username1").formValidator({validatorGroup:"2",onShowText:"邮箱/手机",onFocus:"用户名是您注册时使用的手机号或邮箱",onCorrect:"该用户名可以注册"}).inputValidator({min:6,max:20,onError:"请输入正确的邮箱或手机号码"})
        $("#password1").formValidator({validatorGroup:"2",onShow:"请输入密码",onFocus:"密码长度为6~20个字符",onCorrect:"密码合法"}).inputValidator({min:6,max:20,onError:"密码长度不合法,请确认"});
});

</script>

</head>

<body>


<p>

<form name="formbind1" id="formbind1" method="post" action="demo1.html">
    <table border="0px" width="730px" cellspacing="9">
        <tr>
            <td align="right" width="105px"><span class="regtlx">邮箱/手机</span></td>
            <td width="265px"><input class="inp inw" type="text" id="username1" name="username1" value="" /></td>
            <td width="330px"><div id="username1Tip" style="width:280px"></div> </td>
        </tr>
        <tr>                                 
            <td><span class="regtlx">密码</span></td>
            <td><input class="inp inw" id="password1" type="password" name="password1"/></td>
            <td><div id="password1Tip" style="width:280px"></div></td>
        </tr>
    </table>
    <input type="submit" name="button" id="button" value="提交" />
</form>

<script type="text/javascript">

</script> 
<div id="output"></div>
</body>
</html>

不知道楼主的formValidate是哪个版本

#4


不要用submit用button就没有问题了

#5


我用的也是formValidator-4.1.3.js 

#6


引用 5 楼 u011578224 的回复:
我用的也是formValidator-4.1.3.js 

你把我那段考下来在你本地测试看看,是不是验证不通过,不提交form

#7


引用 6 楼 shixitong 的回复:
Quote: 引用 5 楼 u011578224 的回复:

我用的也是formValidator-4.1.3.js 

你把我那段考下来在你本地测试看看,是不是验证不通过,不提交form

我试过了 是验证通过才能提交到action="demo1.html"
但是我的action=“#”,提交传值的操作我在js里。我该怎么办
$('#formbind1').validate({
     submitHandler:function() {
var saveForm=$('#formbind1');
var user_id=$('#user_id').val();
var rand=$('#vcode').val();
var name=$('#real_name').val();
var username1=$('#username1').val();
var password1=$('#password1').val();
var postData ="name="+name+"&user_id="+user_id+"&rand="+rand+"&username1="+username1+
"&password1="+password1+'&edit='+(new Date()).valueOf();
$.ajax({
url:'../login/bind!BindAlipay.xml',
type:'POST',
data:postData,
dataType:'xml',
timeout:30000,
error:function(){
alert("数据出错,请稍候重试");
},
success:function(data){
var result = $(data).find('result >retcode').text();
if(result == 1){
alert("数据出错,请重试!")
}else if(result == 3){
alert("请填写正确的验证码!")
}else if(result == 2){
alert("密码或用户名错误!")
}else if(result == 4){
alert("请输入正确的邮箱或手机号!")
}else if(result == 0){
location.href="../login/login!index";
}
}
});
}
});

#8


formValidator表单验证不通过怎么也可以提交
那应该把提交的这些js放在这个方法里,只有验证通过才回调这个方法

#9


怎么弄,请明示

#10


纠结了一天终于解决了,虽然不是用你的方法,还是非常感谢你了 formValidator表单验证不通过怎么也可以提交

#11


请问你是怎么弄好的 ,我也出现了相同的问题,我想用ajaxsubmit提交,可是验证失败也提交

#1


$.formValidator.initConfig({validatorGroup:"2",formID:"formbind1",theme:"baidu",submitOnce:true,
            onError:function(msg){
                alert(msg);
return;
            }
        });

如果验证不通过,return掉看看

#2


引用 1 楼 shixitong 的回复:
$.formValidator.initConfig({validatorGroup:"2",formID:"formbind1",theme:"baidu",submitOnce:true,
            onError:function(msg){
                alert(msg);
return;
            }
        });

如果验证不通过,return掉看看

试过不行  我直接return false;他还是去提交了

#3


引用 2 楼 u011578224 的回复:
Quote: 引用 1 楼 shixitong 的回复:

$.formValidator.initConfig({validatorGroup:"2",formID:"formbind1",theme:"baidu",submitOnce:true,
            onError:function(msg){
                alert(msg);
return;
            }
        });

如果验证不通过,return掉看看

试过不行  我直接return false;他还是去提交了


测试了下,以下是测试代码
form和验证代码都是你上面提供的,然后formValidate版本是formValidator-4.1.3.js
IE8下测试,验证不通过是不提交的
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 4.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title></title>
<script src="jquery-1.4.4.min.js" type="text/javascript"></script>
<script src="formValidator-4.1.3.js" type="text/javascript" charset="UTF-8"></script>
<script type="text/javascript">
$(document).ready(function(){
$.formValidator.initConfig({validatorGroup:"2",formID:"formbind1",theme:"baidu",submitOnce:true,
            onError:function(msg){
                alert(msg);
            }
        });
        $("#username1").formValidator({validatorGroup:"2",onShowText:"邮箱/手机",onFocus:"用户名是您注册时使用的手机号或邮箱",onCorrect:"该用户名可以注册"}).inputValidator({min:6,max:20,onError:"请输入正确的邮箱或手机号码"})
        $("#password1").formValidator({validatorGroup:"2",onShow:"请输入密码",onFocus:"密码长度为6~20个字符",onCorrect:"密码合法"}).inputValidator({min:6,max:20,onError:"密码长度不合法,请确认"});
});

</script>

</head>

<body>


<p>

<form name="formbind1" id="formbind1" method="post" action="demo1.html">
    <table border="0px" width="730px" cellspacing="9">
        <tr>
            <td align="right" width="105px"><span class="regtlx">邮箱/手机</span></td>
            <td width="265px"><input class="inp inw" type="text" id="username1" name="username1" value="" /></td>
            <td width="330px"><div id="username1Tip" style="width:280px"></div> </td>
        </tr>
        <tr>                                 
            <td><span class="regtlx">密码</span></td>
            <td><input class="inp inw" id="password1" type="password" name="password1"/></td>
            <td><div id="password1Tip" style="width:280px"></div></td>
        </tr>
    </table>
    <input type="submit" name="button" id="button" value="提交" />
</form>

<script type="text/javascript">

</script> 
<div id="output"></div>
</body>
</html>

不知道楼主的formValidate是哪个版本

#4


不要用submit用button就没有问题了

#5


我用的也是formValidator-4.1.3.js 

#6


引用 5 楼 u011578224 的回复:
我用的也是formValidator-4.1.3.js 

你把我那段考下来在你本地测试看看,是不是验证不通过,不提交form

#7


引用 6 楼 shixitong 的回复:
Quote: 引用 5 楼 u011578224 的回复:

我用的也是formValidator-4.1.3.js 

你把我那段考下来在你本地测试看看,是不是验证不通过,不提交form

我试过了 是验证通过才能提交到action="demo1.html"
但是我的action=“#”,提交传值的操作我在js里。我该怎么办
$('#formbind1').validate({
     submitHandler:function() {
var saveForm=$('#formbind1');
var user_id=$('#user_id').val();
var rand=$('#vcode').val();
var name=$('#real_name').val();
var username1=$('#username1').val();
var password1=$('#password1').val();
var postData ="name="+name+"&user_id="+user_id+"&rand="+rand+"&username1="+username1+
"&password1="+password1+'&edit='+(new Date()).valueOf();
$.ajax({
url:'../login/bind!BindAlipay.xml',
type:'POST',
data:postData,
dataType:'xml',
timeout:30000,
error:function(){
alert("数据出错,请稍候重试");
},
success:function(data){
var result = $(data).find('result >retcode').text();
if(result == 1){
alert("数据出错,请重试!")
}else if(result == 3){
alert("请填写正确的验证码!")
}else if(result == 2){
alert("密码或用户名错误!")
}else if(result == 4){
alert("请输入正确的邮箱或手机号!")
}else if(result == 0){
location.href="../login/login!index";
}
}
});
}
});

#8


formValidator表单验证不通过怎么也可以提交
那应该把提交的这些js放在这个方法里,只有验证通过才回调这个方法

#9


怎么弄,请明示

#10


纠结了一天终于解决了,虽然不是用你的方法,还是非常感谢你了 formValidator表单验证不通过怎么也可以提交

#11


请问你是怎么弄好的 ,我也出现了相同的问题,我想用ajaxsubmit提交,可是验证失败也提交