quarta-feira, 29 de março de 2017

JQuery: Verificando se o elemento existe

Estava eu, trabalhando com um formulário dinâmico quando deparo na seguinte situação: precisava iterar por uma série de elementos, mas não tinha como saber de antemão quantos elementos tem. Como os ids eram gerados num padrão, é fácil mapear, mas eu precisava achar um ponto de parada. Aí que a coisa complicou: o JQuery não retorna um null, false, ou algo que identifique que tal elemento não existe.

Pesquisando, encontrei uma gambiarra para isso, já que o JQuery não diz diretamente se o elemento existe, mas você ainda pode tentar acessar o elemento ou alguma propriedade, estas sim vão retornar um null ou undefined ou qualquer valor equivalente ao false numa condicional.

O código que verifica se um elemento JQuery existe ou não é o seguinte:

if($("#elementoX")[0]){
  //O elemento existe
}else{
  //O elemento não existe
}

Nenhum comentário:

Postar um comentário