Encuentra todos los elementos en una página cuyo ID de elemento contiene un texto determinado usando jQuery


Estoy tratando de encontrar todos los elementos en una página cuyo ID de elemento contiene un cierto texto. Luego necesitaré filtrar los elementos encontrados en función de si están ocultos o no. Cualquier ayuda es muy apreciada.

Author: Robert Harvey, 2009-07-30

4 answers

$('*[id*=mytext]:visible').each(function() {
    $(this).doStuff();
});

Tenga en cuenta que el asterisco '*' al principio del selector coincide con todos los elementos.

Ver el atributo Contiene Selectores, así como los selectores : visible y : oculto.

 159
Author: karim79,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2010-12-06 22:50:59

Si usted está encontrando por Contiene entonces será así

    $("input[id*='DiscountType']").each(function (i, el) {
         //It'll be an array of elements
     });

Si estás encontrando por Comienza Con {[8] } entonces será así

    $("input[id^='DiscountType']").each(function (i, el) {
         //It'll be an array of elements
     });

Si estás encontrando por Termina Con {[8] } entonces será así

     $("input[id$='DiscountType']").each(function (i, el) {
         //It'll be an array of elements
     });

Si desea seleccionar elementos que id no es una cadena dada

    $("input[id!='DiscountType']").each(function (i, el) {
         //It'll be an array of elements
     });

Si desea seleccionar elementos que id contiene una palabra dada, delimitada por espacios

     $("input[id~='DiscountType']").each(function (i, el) {
         //It'll be an array of elements
     });

Si desea seleccionar elementos que id es igual a una cadena dada o comienza con esa cadena seguida de un guion

     $("input[id|='DiscountType']").each(function (i, el) {
         //It'll be an array of elements
     });
 107
Author: dnxit,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-07-14 15:53:08

Esto selecciona todos los DIVs con un ID que contiene 'foo' y que son visibles

$("div:visible[id*='foo']");
 16
Author: port-zero,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-07-30 13:57:24

Gracias a los dos. Esto funcionó perfectamente para mí.

$("input[type='text'][id*=" + strID + "]:visible").each(function() {
    this.value=strVal;
});
 6
Author: user48408,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-07-30 15:16:34