jQuery ID comienza con

131

Estoy tratando de obtener todos los elementos con una identificación que comience con algún valor. A continuación se muestra mi código jQuery. Estoy tratando de usar una variable de JavaScript cuando busco elementos. Pero no funciona. ¿Qué me estoy perdiendo a continuación? Entonces, el id 'valor' que estoy buscando es el valor del elemento en el que se hizo clic

$(document).ready(function() {
    $('input[name$="_chkmulti"]').click(function(){
        var value = $(this).val();
        $("td[id^= + value +]").each(function(){
            alert("yes");
        });


    });
});
DG3
fuente

Respuestas:

247

tratar:

$("td[id^=" + value + "]")
Mark Kahn
fuente
Una advertencia: este selector no funciona si el 'valor' es un elemento HTML, como descubrí por las malas cuando mis ID para los elementos de la lista comenzaron con 'li'. La solución fue comenzar con 'li_'
Tim Dawson
51

Aqui tienes:

$('td[id^="' + value +'"]')

entonces si el valor es por ejemplo 'foo', entonces el selector será 'td[id^="foo"]'.

Tenga en cuenta que las comillas son obligatorias : [id^="...."].

Fuente: http://api.jquery.com/attribute-starts-with-selector/

Šime Vidas
fuente
1
Las comillas no son realmente obligatorias: "valor: un valor de atributo. Puede ser una sola palabra sin comillas o una cadena entre comillas". De los documentos vinculados en la respuesta. Similar a la respuesta aceptada.
Ralph Lavelle