Como usar continue no jQuery cada loop ()?


Respostas:


364

Podemos quebrar um $(selector).each()loop e um $.each()loop em uma iteração específica, fazendo a função de retorno de chamada retornar false. Retornar non-falseé o mesmo que uma instrução continue em um forloop; ele pulará imediatamente para a próxima iteração.

return false; // this is equivalent of 'break' for jQuery loop

return;       // this is equivalent of 'continue' for jQuery loop

Note que $(selector).each()e $.each()são diferentes funções .

Referências:


Embora seja verdade, isso não parece estar documentado. Esse é um recurso 'não oficial'?
Michael Scheper

7
Ele está documentado aqui api.jquery.com/jquery.each @MichaelScheper
Jayram

1
Esse é o primeiro lugar que eu olhei, é claro. Eu vejo agora; meio que se perde entre todos os exemplos.
Michael Scheper

29
$('.submit').filter(':checked').each(function() {
    //This is same as 'continue'
    if(something){
        return true;
    }
    //This is same as 'break'
    if(something){
        return false;
    }
});

3
Embora esse código possa responder à pergunta, fornecer um contexto adicional a respeito de por que e / ou como esse código responde à pergunta melhora seu valor a longo prazo.
Ajean

7

Podemos quebrar o loop $ .each () em uma iteração específica, fazendo com que a função de retorno de chamada retorne falsa. Retornar não falso é o mesmo que uma instrução continue em um loop for; ele pulará imediatamente para a próxima iteração. - jQuery.each () | Documentação da API jQuery


6

return ou return false não são os mesmos que continue. Se o loop estiver dentro de uma função, o restante da função não será executado como seria de esperar com um verdadeiro "continue".

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.