quinta-feira, 30 de março de 2017

JQuery e Checkbox

Dos tipos que a tag "<input>" pode assumir, um dos mais excêntricos é o Checkbox. Não importa se usa PHP, .NET, Javascript e é claro que no JQuery não foi diferente. Usar o método "val" não vai verificar se ele foi selecionado nem alterar o estado dele. Enfim, como tratar esses dados?

Para verificar se o checkbox está checkado ou não:
$("#checkboxX").is(':checked')

Para mudar a seleção do checkbox:
 $("#checkboxX").prop('checked', true);
 $("#checkboxX").prop('checked', false);

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
}