O ID do jQuery começa com


130

Eu estou tentando obter todos os elementos com um ID começando com algum valor. Abaixo está o meu código jQuery. Estou tentando usar uma variável JavaScript ao procurar itens. Mas não funciona. O que estou perdendo abaixo? Portanto, o ID 'valor' que estou pesquisando é o valor do elemento clicado

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


    });
});

Respostas:


246

experimentar:

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

Uma palavra de aviso: esse seletor não funciona se o 'valor' for um elemento HTML, como descobri da maneira mais difícil quando meus IDs para itens da lista começaram com 'li'. A solução foi iniciá-los com 'li_'
Tim Dawson

50

Aqui está:

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

portanto, se o valor for, por exemplo 'foo', o seletor será 'td[id^="foo"]'.

Note que as aspas são obrigatórias : [id^="...."].

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


1
As aspas não são realmente obrigatórias: "value: um valor de atributo. Pode ser uma palavra única sem aspas ou uma string entre aspas". Dos documentos vinculados na resposta. Semelhante à resposta aceita.
Ralph Lavelle
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.