0. 前言
也許我們通過 jquery 的循環方法進行數組遍歷,但是當不符合條件時,怎么跳出當前循環?(即用each方法內,當不滿足條件時想break跳出循環體,想continue繼續執行下一個循環遍歷),我們經常會習慣JS中的break何continue,但是使用之后沒有效果,因為在JQuery中沒有這兩條命令,非其關鍵字。
1. JQuery each循環,要實現break和continue的功能
- break ----用return false;
- continue --用return ture;
2. JQuery怎么跳出當前的each循環
API 上的說明只有跳出整個循環(如果需要退出 each 循環可使回調函數返回 false,其它返回值將被忽略。)
- return false;——跳出所有循環;相當于 javascript 中的 break 效果。
- return true;——跳出當前循環,進入下一個循環;相當于 javascript 中的 continue 效果
例子代碼如下:
1
2
3
4
5
6
7
8
9
|
$( function (){ $( "input[type='text']" ).each( function (i){ var _val=$( this ).val(); alert(_val); if (_val== '2' ){ return false ; //跳出循環 } }) }); |
3. JQuery each方法跳出循環并獲得返回值的方法
- return false:將停止循環 (就像在普通的循環中使用 'break')。
- return true:跳至下一個循環(就像在普通的循環中使用'continue')。
代碼如下:
1
2
3
4
5
6
7
8
9
10
|
function test(){ var success = false ; $(..).each( function () { if (..) { success = true ; return false ; } }); return success ; } |
JQuery是對象鏈,所以$(..).each()返回的還是對象集合。each(function(){}):是回調函數,在回調函數里不能返回結果到回調函數each外面。
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。
原文鏈接:https://www.cnblogs.com/fanbi/p/7573947.html