2013-03-30 2 views
-1

jQuery.each에 대한 implment가있을 수 있습니다. jQuery.each에서 처리 된 배열 내에서 일치하는 항목이 발견되면 나머지 요소를 추가 프로세스없이 중단하거나 반환 할 수 있습니다.return in jQuery.each

<ul> 
<li>foo</li> 
<li>bar</li> 

당신은 목록 항목을 선택하고 그들에 걸쳐 반복 할 수

$("li").each(function(index) { 
    //if($(this).text() == 'foo') , i.e if foo is found , 
//then return instead of processing bar. 
}); 
+2

[문서] (http://api.jquery.com/jQuery.each/)이 같은 질문을하면 "_We 수 콜백 함수가 false를 반환하도록 $ 반복문을 중단 시키십시오 .False가 아닌 경우는 for 루프의 continue 문과 동일하며, 즉시 다음 반복으로 건너 뜁니다. " – jahroy

답변

3

return false는 않습니다 : 문서에서

var elem; 

$("li").each(function() { 
    if($(this).text() == 'foo') { 
     elem = this; 
     return false; 
    } 
}); 
+1

Nice, 짧은 설명. false를 반환하면 '중단'을 의미하고 true를 반환하면 '계속됨'을 의미합니다. –

2

합니다.

콜백 함수가 false를 반환함으로써 특정 반복에서 $ .each() 루프를 깨뜨릴 수 있습니다. false가 아닌 값을 반환하면 for 루프의 continue 문과 동일합니다. 그것은 jQuery documentation에서 다음 반복

http://api.jquery.com/jQuery.each/

1

으로 건너 뜁니다됩니다

우리는 콜백 함수가 false를 반환하여 특정 반복에서 $의 .each() 루프를 중단 할 수 있습니다. false가 아닌 경우는 for 루프의 continue 문과 동일합니다. 즉시 다음 반복으로 건너 뜁니다.

예 :

<div id="one"></div> 
<div id="two"></div> 
<div id="three"></div> 
<div id="four"></div> 
<div id="five"></div> 

<script> 

    var arr = [ "one", "two", "three", "four", "five" ]; 
    jQuery.each(arr, function() { 
     $("#" + this).text("Mine is " + this + "."); 
     return (this != "three"); // will stop running after "three" 
    }); 

</script>` 
당신은 읽기 고려해야