检查下拉列表是否有多个选项

Check if drop-down has more than 1 option

本文关键字:选项 下拉列表 是否 检查      更新时间:2023-09-26

我有一个下拉列表,它是在更改其他一些复选框时填充的,所以加载时下拉列表是空的(其中只有一个选项"Select"(。

<select id="A" aria-invalid="false">
    <option disabled="" value="0">Select</option>
</select>

选中复选框时,该值将添加到下拉列表中,取消选中复选框后,该值会从下拉列表中删除。

我已经为此写了一个逻辑。我要找的是如何检查下拉列表中是否添加了任何选项。例如,在选中复选框时,如果添加了第一个选项,我想显示下拉框,否则会隐藏下拉列表。

您可以使用option长度;

var optionsLen = $('#A option').length;
document.write('<br />Number of Options = ' + optionsLen);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<select id="A" aria-invalid="false">
  <option disabled="" value="0">Select</option>
</select>


如果您想要未禁用的选项数。

var optionsLen = $('#A option:not(:disabled)').length;
document.write('<br />Number of Options = ' + optionsLen);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<select id="A" aria-invalid="false">
  <option disabled="" value="0">Select</option>
  <option value="1">One</option>
</select>

alert($('#A option').length)

演示

使用select的id作为select并选择该选项,然后使用.length 获取的长度

你可以试试这个:

$(document).ready(function() {
      alert($('#A option').length)
});

演示

在这里,它检查有多少个子项,您只需要添加一个if条件或类似的条件,就可以完成

https://jsfiddle.net/z8ub6d01/

html:

<select>
    <option>Select</option>
    <option>Select</option>
    <option>Select</option>
</select>
<span id="foo"></span>

jquery/js:

var $children = $('select').children();
$('#foo').html("You have " + $children.length + " children");