今天用$.each循环判断是否存在闹了一个笑话,原来在循环里面return false;是退出循环,而不是终止JS余下操作!
错误代码如下:
$.each(groups, function(key, val) { if (val.indexOf(groupFactorSel + "&") == 0) { alert("不能重复添加!"); return false; } });
呵呵,其实我是想退出外面的方法,不继续执行了!
var isJumpToOut = false; $.each(groups, function(key, val) { if (val.indexOf(groupFactorSel + "&") == 0) { isJumpToOut = true; alert("不能重复添加!"); return false; } }); if(isJumpToOut){ return; }
改了下,如上;
可以换for循环等,如果还有其他方法各位可以留言!
补充下:使用return true,相当于continue.