22 votes

Sélectionner tous les boutons d'entrée non désactivés

Puis-je, d'une manière ou d'une autre, sélectionner tous les éléments de soumission d'entrée qui sont no désactivé ?

Je peux facilement trouver tous les handicapés avec : http://api.jquery.com/disabled-selector/

$("input.saveitembtn:disabled")

mais y a-t-il quelque chose à la 'la :

$("input.saveitembtn:NOTdisabled")

La solution que j'ai trouvée jusqu'à présent consiste à les passer tous en revue avec jQuerys .each en utilisant .is pour vérifier chacun d'entre eux individuellement :

$("input.saveitembtn").each(function(a){
  if( !$(this).is(':disabled') ) {
    ...
  }
});

ce qui me semble totalement exagéré. Existe-t-il un sélecteur simple dans jQuery ?

43voto

palaѕн Points 23333

Oui, il y a :not()

$("input.saveitembtn:not(:disabled)")

13voto

billynoah Points 456

Je ne sais pas trop pourquoi, mais la réponse "accepter" ne fonctionne pas pour moi. Cependant, ceci fonctionne :

$("input.saveitembtn:not([disabled])");

3voto

Roko C. Buljan Points 46488

Vanilla JavaScript :

const ELS_enabled = document.querySelectorAll("input:not([disabled])");

console.log(ELS_enabled.length); // 2

<input type="text" required placeholder="Required">
<input type="text" required disabled placeholder="Required and disabled">
<input type="text" required placeholder="Required">

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X