Sto cercando di trovare tutti gli elementi in una pagina il cui ID elemento contiene un determinato testo. Dovrò quindi filtrare gli elementi trovati in base al fatto che siano nascosti o meno. Qualsiasi aiuto è molto apprezzato.
Sto cercando di trovare tutti gli elementi in una pagina il cui ID elemento contiene un determinato testo. Dovrò quindi filtrare gli elementi trovati in base al fatto che siano nascosti o meno. Qualsiasi aiuto è molto apprezzato.
Risposte:
$('*[id*=mytext]:visible').each(function() {
$(this).doStuff();
});
Nota che l'asterisco '*' all'inizio del selettore corrisponde a tutti gli elementi .
Vedi l' attributo Contiene i selettori , nonché i selettori : visible e : hidden .
id
non si usano le virgolette, mentre quando name
si fa una corrispondenza con un elemento si fa. $('*[name*="myname"]:visible')
Non è il più intuitivo e mi ha raggiunto prima.
Se lo trovi da Contains , sarà così
$("input[id*='DiscountType']").each(function (i, el) {
//It'll be an array of elements
});
Se lo stai scoprendo da Starts With , sarà così
$("input[id^='DiscountType']").each(function (i, el) {
//It'll be an array of elements
});
Se lo stai trovando con Ends With , sarà così
$("input[id$='DiscountType']").each(function (i, el) {
//It'll be an array of elements
});
Se si desidera selezionare elementi quale ID non è una determinata stringa
$("input[id!='DiscountType']").each(function (i, el) {
//It'll be an array of elements
});
Se si desidera selezionare elementi il cui nome contiene una determinata parola, delimitato da spazi
$("input[name~='DiscountType']").each(function (i, el) {
//It'll be an array of elements
});
Se si desidera selezionare elementi quale id è uguale a una determinata stringa o iniziare con quella stringa seguita da un trattino
$("input[id|='DiscountType']").each(function (i, el) {
//It'll be an array of elements
});
Questo seleziona tutti i DIV con un ID contenente 'pippo' e che sono visibili
$("div:visible[id*='foo']");
$(this)[0].innerText