Selecionando objetos com jQuery
Este post é uma dica para quem esta iniciando com jQuery, esta lib trabalha com metodo de seleção de objetos semelhante ao empregado por CSS.
Exemplos:
Selecionando objetos, por Tag.
CSS: a{//}
jQuery: $(“a”);
Selecionando objetos, pelo ID.
CSS: #itemMenu{//}
jQuery: $(“#itemMenu”);
Selecionando objetos, por classe.
CSS: .className{//}
jQuery: $(“.className”);
Acho que deu pra entender não é? Ele também aceita agrupamento de objetos se você precisar selecionar vários itens de uma só vez, exemplo:
$("input, textarea, select, #itemMenu, .className");
Não para por aí… e que tal chamar um elemento dentro de outro objeto específico?
$("input","#idForm");
neste caso estamos selecionando todos os inputs de dentro de um objeto informado pelo id
Caramba… legal hein! Mas como eu pego um objeto pelo nome usando jQuery? (como se fosse o getElementsByName)
$("input[name=nomeDoCara]");
Hmmm então se eu posso pegar pelo nome desse jeito… eu posso procurar por outros atributos!!!
Vamos lá…
$("input[type=checkbox]");
Assim eu peguei todos os inputs do tipo checkbox, mas eu quero só os que estão checados!!
Como faço isso?
Simples
$("input[type=checkbox]:checked");
My Holy God!! That’s Amazing!!!
Yeap… i know!
Mas aqui é só input
eu não sei qual tipo de elemento o nome vai ser.
Tchanannn
$("*[name=nomeDoCara]");
sim, você pode usar o asterisco, eu não recomendo fazer isso porque você vai obrigar o jQuery a percorrer tooodo o código da página, o desenpenho ja não é tão legal, mas funciona.
Agora que eu tenho os objetos, posso trabalhar com eles de forma generalizada ou isolada.
Um exemplo generalizado:
$("a").css({color: "red"});
Assim, estou dizendo que todos os links serão vermelhos, eu não conheço cada elemento, mas quero que sejam vermelhos.
Um exemplo de trabalho isolado:
$("a").each(function(){
if($(this).attr("target") == "_blank"){
$(this).css({color: "red"});
};
});
Com a função “each” você pode percorrer cada elemento(representado por “this”) retornado pelo seletor $, neste caso estou verificando se o atributo target é igual a _blank, então só neste caso a cor será vermelha.
Espero que tenha sido útil, qualquer dúvida que tiver, é só mandar no comentário
[]s
Ajaxianos
Muito legal, simples e esclarecedor.
Muito bom.
Estava Atraz de uma coisa parecida.
Principalmente quendo se trata de checkbox selecionados.
Parabens!
Excelente artigo.
Dá para ver o poder do JQuery no que se refere a seleção de objetos.
Muito massa o artigo.
Parabéns!
Eu tenho uma dúvida, se eu tiver vários inputs dentro de uma tabela, com n linhas. Em Cada coluna os inputs possuem o mesmo nome e id. com jquery eu posso iterar e pegar o input da linha que eu quiser? Como faço isso?
Obrigado!
Muito bom, ajudará muita gente assim!
legal o post. Mas corrija a busca por valor de um atributo qualquer, que está com o @ dentro do colchete, quando deveria estar a esquerda dele.
Na verdade não se usa mais o @ no atributo, quando fiz o post ainda se usava, obrigado por lembrar, já removi