// check validation function
function ListValidationFunction(event){
//array validation function
var Listvalidators = [peoplenameValidation];
// bypass all function
var Listvalid = Listvalidators.reduce(function(Listvalid, Listvalidator){
return Listvalidator() && Listvalid;
alert("true");
}, true);
return Listvalid;
}
// peoplename validation
function peoplenameValidation(){
var validationID = [];
var inputs = $('.people-name-input');
push all id to array
for(var i = 0; i < inputs.length; i++){
validationID.push(inputs[i].id);
}
if(validationID != ""){
for(var v = 0; v < validationID.length; v++){
var IDvalue = $('#'+validationID[v]);
var IDdata = IDvalue.val();
if(IDdata.length != ""){
IDvalue.css('border-color', '#dfe0e6');
**//problem here , if one of the same class are != "" it return true, i need all the same class != "" then return true.**
return true;
}else{
IDvalue.css('border-color', 'red');
// IDvalue.focus();
}
}
}
return false;
}
我有多个相同的类输入'.people-name-input'进行验证,我检查所有输入长度然后将所有id输入到数组然后检查它。
listValidationFunction用于检查peoplenameValidation是否返回true以及是否返回true ,张贴表格。
在peoplenameValidation返回true,如果其中一个类返回true,表单将提交,如何检查所有相同的calss是否为空,则返回true。
答案 0 :(得分:0)
将在循环的每次迭代中检查IDdata.length != ""
,return
将打破循环(和函数)。因此,如果您需要检查每次迭代,请不要退出循环内的函数。
如果ID.data.length != ""
,您可以添加计数器并将其递增。然后在循环之后,检查增量是否等于validationID.length
,如果是,则检查return true;
。