日期:2014-05-17  浏览次数:20685 次

Jquery验证提交的问题
第一次使用Jquery,由于项目需要,在发布信息时,用到了Jquery的验证提交,验证基本没什么问题了,输错也会有提示,但是输错时还是可以发布提交到后台数据库,不知道那个环节出现了问题,在线等。每个方法后都有return false。

------解决方案--------------------
可以贴详细验证代码
虽然每个方法后都有return false。
有可能你提交验证的时候验证所有方法,只要有一个方法return true,有可能越过其他false的方法直接提交了
------解决方案--------------------
引用:
引用:可以贴详细验证代码
虽然每个方法后都有return false。
有可能你提交验证的时候验证所有方法,只要有一个方法return true,有可能越过其他false的方法直接提交了
JavaScript code?123456789101112131415161718192021222324252627$(functi……

很显然,你这个只要最后一个为true,前面都绕过了,给你一个笨办法,
	$(function(){
var a =false;
var b =false;
var c =false;
                下面是一个简单的例子
$("#email").blur(function(){
var txt = $(this).val();
$("#emailInfo").html("<img src='../images/window_loading.gif'>");
if(txt==""){
a=false;//这里
$("#emailInfo").html("<img src='../images/wrong.gif'>不能为空!");
return a;
}else{
$.post(
"user!email.action?dt="+new Date().getTime(),
{"emailInfo":txt},
function(data){
if(data.ok){
a=true;
$("#emailInfo").html("<img src='../images/right.gif'>邮箱可用");
return a;
}else{
a=false;
$("#emailInfo").html("<img src='../images/wrong.gif'>邮箱不可用!");
return a;
}
},
"json"
);
}
});
定义n个变量,每一个验证对应一个,出错的时候该对应变量置为false,在submit的时候
		$("#form的id").submit(function(){

if(a&&b&&c&&d&&e){
return true;
}else{
return false;
}
});
这样就不会有这个问题了,不过这个解决不优雅,权当一试吧。
------解决方案--------------------
LZ你有没有定义了什么标签的ID叫"submit"的呀。。。
我以前碰到过有ID写成"submit",然后导致form不能提交的问题。。。
------解决方案--------------------
引用:
我把我的代码贴出来好了。
JavaScript code?1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283……

你把button改成submit,然后
$("#form的id").submit(function(){
     
    if(a&&b&&c&&d&&e){
    return true;
    }else{
    return false;
        }
});
这样提交试试,#form的id改成你自己表单的id