Estou tentando selecionar todos os elementos que possuem um data-go-to
atributo que não está vazio.
Eu tentei, $('[data-go-to!=""]')
mas por incrível que pareça, parece que estou selecionando cada elemento da página se eu fizer isso.
Estou tentando selecionar todos os elementos que possuem um data-go-to
atributo que não está vazio.
Eu tentei, $('[data-go-to!=""]')
mas por incrível que pareça, parece que estou selecionando cada elemento da página se eu fizer isso.
experimentar
$(':not([data-go-to=""])')
ATUALIZAR:
Para não enganar ninguém, esta resposta funcionará em versões mais antigas do jQuery, mas não é à prova de futuro. Visto que as respostas de @gmo e @siva parecem estar funcionando com versões posteriores, eu adio (e encorajo você a votar positivamente) em suas respostas ... e é claro, espero que você tenha um dia fantástico.
$('element:not([attribute=])'); // gets all of <element attribute="">
ou$(':not([attribute=])'); // gets all of <* attribute="">
$('[data-go-to!=""]:[data-go-to]')
funciona.Apenas como referência adicional, e um up-to-date
(maio'14)(ago'15)(set'16)(abr'17)(mar'18)(mar'19)( maio'20 ) ...Resposta que funciona com:
PS : mais combinações são possíveis ...
Verifique este teste em jsFiddle para exemplos:
jQuery v1.11.0 ->
jsFiddle online testjQuery v2.1.0 ->
jsFiddle online testjQuery v2.1.3 ->
jsFiddle online testjQuery v3.0.0-alpha1 ->
jsFiddle online testjQuery v3.1.1 Slim ->
jsFiddle online testjQuery v3.2.1 ->
jsFiddle online testjQuery v3.3.1 ->
jsFiddle online testjQuery v3.4.1 ->
jsFiddle online test Última versão do jQuery disponível em jsFiddle em 28 de maio de 20jQuery Edge ->
jsFiddle online test versão jQuery edge (use com cuidado)Ou aqui no SO com este snippet de código .
* Snippet está executando jQuery v2.1.1
Exibir trecho de código
fonte
$(':not([data-go-to=""])')
não está mais funcionandofonte
Unrecognized Expression
erro.Possui 'data-attributeename' e seu valor não está vazio:
Tem 'data-attributeename' vazio ou não:
Exemplo JS Fiddle
fonte
Não tenho certeza sobre um seletor simples, mas você pode usar
filter()
:Demonstração JS Fiddle .
Referências:
filter()
.fonte
De acordo com a documentação, isso deve servir
:not([attr="value"])
DEMO
Espero que isto ajude
fonte
JSBIN
fonte
Usando
:not
,.not()
,:empty
etc só irá verificar se o elemento em si está vazio, não o atributo de dados. Para isso, você terá que filtrar com base no valor dos atributos de dados.FIDDLE
fonte
Isso funciona para mim
fonte
Experimente isto:
fonte
"Syntax error, unrecognized expression: [data-go-to:not(:empty)]"
Isso funciona para mim:
fonte