Comment puis-je, en utilisant JQuery, vérifier si une valeur appartient à la liste déroulante ou non?Vérifiez si la valeur est dans la liste de sélection avec JQuery
Répondre
Utilisez le Attribute Equals Selector
var thevalue = 'foo';
var exists = 0 != $('#select-box option[value='+thevalue+']').length;
Si la valeur de l'option a été réglée par Javascript, cela ne fonctionnera pas. Dans ce cas, nous pouvons effectuer les opérations suivantes:
var exists = false;
$('#select-box option').each(function(){
if (this.value == 'bar') {
exists = true;
return false;
}
});
Juste au cas où vous (ou quelqu'un d'autre) pourrait être intéressé à le faire sans jQuery:
var exists = false;
for(var i = 0, opts = document.getElementById('select-box').options; i < opts.length; ++i)
if(opts[i].value === 'bar')
{
exists = true;
break;
}
Voici une autre option similaire. Dans mon cas, je vérifie les valeurs dans une autre case lorsque je construis une liste de sélection. Je rencontrais des valeurs non définies quand je comparerais, donc je mets mon chèque ainsi:
if ($("#select-box option[value='" + thevalue + "']").val() === undefined) { //do stuff }
Je ne sais pas si cette approche est plus cher.
Pourquoi ne pas utiliser un filtre?
var thevalue = 'foo';
var exists = $('#select-box option').filter(function(){ return $(this).val() == thevalue; }).length;
comparaisons desserrées travail parce que existe> 0 est vrai, existe == 0 est faux, de sorte que vous pouvez simplement utiliser
if(exists){
// it is in the dropdown
}
Ou combiner:
if($('#select-box option').filter(function(){ return $(this).val() == thevalue; }).length){
// found
}
Ou où chaque sélectionnez dropdown a la classe select-boxes cela vous donnera un objet jquery du select (s) qui contiennent la valeur:
var matched = $('.select-boxes option').filter(function(){ return $(this).val() == thevalue; }).parent();
Ceci est de la manière la plus intuitive. – Simon
if(!$('#select-box').find("option:contains('" + thevalue + "')").length){
//do stuff
}
- 1. Vérifiez si la valeur est disponible dans une liste ou non avec valeur disponible
- 2. jQuery: Vérifiez si le caractère est dans la chaîne
- 3. Vérifiez si une valeur est dans une collection avec LINQ
- 4. Vérifiez si l'option est sélectionnée avec jQuery, sinon sélectionnez une valeur par défaut
- 5. Vérifiez si Char est dans la gamme
- 6. Vérifiez si la valeur existe dans les listes imbriquées
- 7. Vérifiez si une valeur a été sélectionnée à partir de la liste déroulante dans C#
- 8. Vérifiez si la valeur est isset et null
- 9. Sélection de la liste dans jQuery
- 10. Vérifiez si la valeur existe déjà dans la liste des dictionnaires?
- 11. la sélection d'une liste de sélection dans jquery
- 12. Vérifiez si la connexion est fermée!
- 13. JQuery Vérifiez si Div est Montré
- 14. VBA Vérifiez si la variable est vide
- 15. Vérifiez si la superclasse est java.lang.Object
- 16. Erreur de validation jquery en remplaçant la valeur de la liste de sélection
- 17. JQuery. Vérifiez la valeur de la boîte de sélection et de la zone de texte avec la même classe, est-ce possible?
- 18. Sélection du type d'élément avec la valeur d'attribut dans jQuery
- 19. Vérifiez si la clé de session est définie dans Django
- 20. Insérer une valeur dans la liste de sélection
- 21. Vérifiez la valeur à l'insertion
- 22. Jquery modifier la valeur de sélection (multiple)
- 23. Aide avec la sélection jQuery
- 24. C#: Vérifiez la valeur stockée dans l'objet chaîne est
- 25. Vérifiez si une valeur de scanf est un nombre?
- 26. Vérifiez si une valeur existe dans ArrayList
- 27. Vérifiez si le bouton radio Valeur vérifiée
- 28. Vérifiez si une valeur de colonne est contenue dans une autre valeur de colonne (TSQL)?
- 29. Vérifiez si l'élément d'une liste existe dans une autre liste
- 30. Lier la valeur de la liste de sélection jquery dynamique sur le poste
La deuxième approche explicite est également plus sûr car il permet des valeurs d'option contenant un caractère, y compris ']' et '' \\. Évitez de créer des chaînes de sélecteur à partir du texte brut sans effectuer correctement l'échappement CSS. – bobince
Pourquoi le 'return false'? –
Retour false est utilisé pour rompre/terminer la boucle .each. – Angel