Вы можете сделать это следующим образом:
function validate(){
var rv = true;
$('input[type=text]').each(function(){
if($(this).val() == "") {
rv = false; // Set flag
return false; // Stop iterating
}
});
return rv;
}
Это предполагает, что вы хотите вернуть true
, если вы не нашли его.
Вы можете обнаружить, что это один из тех sitautions, где вы не хотите использовать each
вообще:
function validate(){
var inputs = $('input[type=text]');
var index;
while (index = inputs.length - 1; index >= 0; --index) {
if (inputs[index].value == "") { // Or $(inputs[index]).val() == "" if you prefer
return false;
}
}
// (Presumably return something here, though you weren't in your example)
}
+1 за умное использование селектора и длины. – Nolo
@Nick Craver, это очень старое сообщение, но у меня есть вопрос. Есть ли какой-либо риск выше этой функции, возвращать 'true' до завершения цикла' each'? – YahyaE
Абсолютно нулевой такой риск, так как до завершения .each() он не переходит к последнему утверждению. @YahyaE – K48