在.each()循环内失败时中断jQuery函数的执行
我有以下表格在.each()循环内失败时中断jQuery函数的执行,jquery,function,return,each,Jquery,Function,Return,Each,我有以下表格 <input class="required" id="name" value="some content"/> <input class="required" id="address" value=""/> <input class="required" id="lastname" value="some content"/> 不幸的是,当我运行代码时,我看到以下输出: name address *** Failed *** Other co
<input class="required" id="name" value="some content"/>
<input class="required" id="address" value=""/>
<input class="required" id="lastname" value="some content"/>
不幸的是,当我运行代码时,我看到以下输出:
name
address
*** Failed ***
Other code
第一次失败后,
.each()
循环将正确停止,但检查功能似乎仍在运行。我怎样才能打破它的执行?这里有一个。返回false只会破坏$。每个
语句,但函数继续执行下一条指令(console.log('Other code');
)。返回false只会破坏$。每个
语句,但函数继续执行下一条指令(console.log('Other code'))我找到了另一种解决办法。其思想是获取所需的
输入,然后为
循环生成一个经典的。这避免了each()
循环和匿名函数
function check() {
var required = $('.required');
var size = required.size();
for (var i = 0; i < size; i++) {
var input = $(required[i]);
console.log(input.attr('id'));
if (input.val() == null || input.val() == '') {
console.log('*** Failed ***');
return false;
}
}
console.log('Other code');
return true;
}
函数检查(){
所需变量=$('.required');
var size=必需的.size();
对于(变量i=0;i
我找到了另一种解决方案。其思想是获取所需的
输入,然后为
循环生成一个经典的。这避免了each()
循环和匿名函数
function check() {
var required = $('.required');
var size = required.size();
for (var i = 0; i < size; i++) {
var input = $(required[i]);
console.log(input.attr('id'));
if (input.val() == null || input.val() == '') {
console.log('*** Failed ***');
return false;
}
}
console.log('Other code');
return true;
}
函数检查(){
所需变量=$('.required');
var size=必需的.size();
对于(变量i=0;i
您从每个匿名函数返回false
,而不是从check()
您从每个匿名函数返回false
,而不是从check()
我相信您,但您至少应该解释为什么它会工作(即使它是非常全面的代码)我相信您,但您至少应该解释为什么它会工作(即使它是相当全面的代码)
function check() {
var required = $('.required');
var size = required.size();
for (var i = 0; i < size; i++) {
var input = $(required[i]);
console.log(input.attr('id'));
if (input.val() == null || input.val() == '') {
console.log('*** Failed ***');
return false;
}
}
console.log('Other code');
return true;
}