Estou tentando encontrar todos os elementos em uma página cujo ID do elemento contém um determinado texto. Em seguida, precisarei filtrar os elementos encontrados com base em se eles estão ocultos ou não. Qualquer ajuda é muito apreciada.
Estou tentando encontrar todos os elementos em uma página cujo ID do elemento contém um determinado texto. Em seguida, precisarei filtrar os elementos encontrados com base em se eles estão ocultos ou não. Qualquer ajuda é muito apreciada.
Respostas:
$('*[id*=mytext]:visible').each(function() {
$(this).doStuff();
});
Observe que o asterisco '*' no início do seletor corresponde a todos os elementos .
Consulte o Atributo contém seletores , bem como os seletores : visible e : hidden .
idvocê não usa aspas, enquanto que ao fazer a correspondência com um elemento, namevocê faz. $('*[name*="myname"]:visible') Não é o mais intuitivo e já me alcançou antes.
Se você encontrar por Contains , será assim
$("input[id*='DiscountType']").each(function (i, el) {
//It'll be an array of elements
});
Se você encontrar pela Starts With , será assim
$("input[id^='DiscountType']").each(function (i, el) {
//It'll be an array of elements
});
Se você encontrar pelo Ends With , será assim
$("input[id$='DiscountType']").each(function (i, el) {
//It'll be an array of elements
});
Se você deseja selecionar elementos cujo id não é uma determinada string
$("input[id!='DiscountType']").each(function (i, el) {
//It'll be an array of elements
});
Se você deseja selecionar elementos cujo nome contenha uma determinada palavra, delimitada por espaços
$("input[name~='DiscountType']").each(function (i, el) {
//It'll be an array of elements
});
Se você deseja selecionar elementos cujo id é igual a uma determinada string ou começa com essa string seguida por um hífen
$("input[id|='DiscountType']").each(function (i, el) {
//It'll be an array of elements
});
Isso seleciona todos os DIVs com um ID contendo 'foo' e que são visíveis
$("div:visible[id*='foo']");
$(this)[0].innerText