Comment vérifier le nombre d'options qu'il y a dans un menu déroulant?


110

Comment vérifier, à l'aide de jQuery, combien d'options y a-t-il dans un menu déroulant?

Merci.

Réponses:


201
var length = $('#mySelectList').children('option').length;

ou

var length = $('#mySelectList > option').length;

Cela suppose que votre <select>liste a un ID de mySelectList.


.children('option').length;était le seul moyen pour que je puisse obtenir l'option réelle count / select.length après avoir rempli ma liste de sélection dynamiquement via ajax dans le .done ({}); en utilisant .append (). Marche à suivre!
yardpenalty.com

pour la longueur des options sélectionnées est-ce correct "$ ('. option de sélection de recherche: sélectionné'). length"
Youssef Boudaya

10
$("#mydropdown option").length

Ou si vous en avez déjà une référence,

$(myDropdown).find("option").length

8

Utilisez la propriété length ou la méthode size pour savoir combien d'éléments se trouvent dans une collection jQuery. Utilisez le sélecteur descendant pour sélectionner tous <option>les éléments dans un fichier <select>.

HTML:

<select id="myDropDown">
<option>1</option>
<option>2</option>
.
.
.
</select>

JQuery:

var numberOfOptions = $('select#myDropDown option').length

Et une note rapide, vous aurez souvent besoin de faire quelque chose dans jquery pour une chose très spécifique, mais vous devez d'abord voir si la chose très spécifique existe. La propriété length est l'outil parfait. exemple:

   if($('#myDropDown option').length > 0{
      //do your stuff..
    } 

Cela se traduit par "Si l'élément avec ID = myDropDown a des" options "descendantes, faites ce que vous devez faire.




4

Obtenez le nombre d'options dans un élément de sélection particulier

$("#elementid option").length

Il n'y a aucun avantage à utiliser ".size" sur ".length" qui est légèrement plus rapide.
Russ Bradberry



3
$('select option').length;

ou

$("select option").size()

.size()est utile si vous voulez enchaîner
adardesign

.size () renvoie un entier et, par conséquent, ne peut pas être chaîné. Vous ne pouvez enchaîner que des méthodes qui renvoient des objets jQuery.
Russ Bradberry

0

Avec du javascript pur, vous pouvez simplement appeler la longueur sur l'id de la boîte de sélection. Ce sera plus rapide. En règle générale, avec tout ce que javascript natif fonctionne de mieux en mieux avec les navigateurs modernes

Ceci peut être réalisé en javascript par

     var dropdownFilterSite = document.querySelector( '#dropDownId' );  //Similar to jQuery

var length = dropdownFilterSite.length.

Bon site Web pour un peu d'apprentissage

www.youmightnotneedjquery.com

Une bonne vidéo à regarder par Todd Motto

https://www.youtube.com/watch?v=pLISnANteJY

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.