我想验证多个函数,并且对于每个返回false的函数,都要做一些动画。
以下是代码:
function validarChido(){
var dedo = $('#dedo_pick');
if(dedo.children().size() < 2){
dedo.animate({'background-color' : 'red'},200);
dedo.animate({'background-color' : '#EEE'},200);
return false;
}
else{return true;}
}
function validarEx(){
var valEx = $('#rate1');
if(valEx.children().size() < 2){
valEx.animate({'background-color' : 'red'},200);
valEx.animate({'background-color' : '#EEE'},200);
return false;
}
else{return true;}
}
$('#form').submit(function(){
if( validarChido() && validarEx() )
{return true }
else
{return false; }
});
当我发送表单时,我只看到第一个执行颜色动画的函数,显然是因为表单验证IF语句没有评估下一个函数,因为第一个函数在这里导致了错误if( validarChido() && validarEx() )
有没有办法评估所有函数并查看每个函数中的动画,然后如果一切都是真的则发送表单?
答案 0 :(得分:1)
不要返回false或true,而是执行类似以下的操作:
function validarChido() {
var dedo = $('#dedo_pick');
if(dedo.children().size() < 2){
dedo.animate({'background-color' : 'red'},200);
dedo.animate({'background-color' : '#EEE'},200);
return "error";
}
else{return "";}
}
function validarEx(){
var valEx = $('#rate1');
if(valEx.children().size() < 2){
valEx.animate({'background-color' : 'red'},200);
valEx.animate({'background-color' : '#EEE'},200);
return "error";
}
else{return "";}
}
$('#form').submit(function(){
var check = validarChido();
check += validarEx();
if( check == "" )
{return true }
else
{return false; }
});
答案 1 :(得分:1)
可能是这样的:
$('#form').submit(function(){
var validarChidoResult = validarChido(),
validarExResult = validarEx();
if( validarChidoResult && validarExResult )
{return true }
else
{return false; }
});
答案 2 :(得分:0)
var result = validarChido();
result = validarEx() && result;
return result;