计算jQuery中选择标签中的选项标签的数量

2020/10/29 14:42 · javascript ·  · 0评论

如何使用jQuery计算DOM元素中<option>s数量<select>

<select data-attr="dropdown" id="input1">
  <option value="Male" id="Male">Male</option>
  <option value="Female" id="Female">Female</option>
</select>

我想找到DOM元素中<option>标签数量<select>,因为要打开带有相应数量的输入字段的设置面板,并从下拉框中选择相应的选项值,然后在预览中再次进行更改面板。

上面的下拉框在我的预览面板中,该面板由jQuery生成。

$('#input1 option').length;

这将产生2

W3C解决方案:

var len = document.getElementById("input1").length;

您可以使用任一length属性,并且length性能优于size

$('#input1 option').length;

或者您可以使用size函数,例如(在jQuery v3中已删除)

$('#input1 option').size(); 

$(document).ready(function(){
   console.log($('#input1 option').size());
   console.log($('#input1 option').length);
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<select data-attr="dropdown" id="input1">
   <option value="Male" id="Male">Male</option>
   <option value="Female" id="Female">Female</option>
</select>

您的问题有点令人困惑,但是假设您要在面板中显示选项数量:

<div id="preview"></div>

$(function() {
  $("#preview").text($("#input1 option").length + " items");
});

不知道我能理解您其余的问题。

在多选选项框中,您可以$('#input1 :selected').length;用来获取所选选项的数量。如果未达到一定的最小选项数量,则这对于禁用按钮很有用。

function refreshButtons () {
    if ($('#input :selected').length == 0)
    {
        $('#submit').attr ('disabled', 'disabled');
    }
    else
    {
        $('#submit').removeAttr ('disabled');
    }
}

好的,我遇到了一些问题,因为我在

$('.my-dropdown').live('click', function(){  
});

我的页面中有多个,这就是为什么我使用一门课。

当我单击下拉列表时,其下拉列表会自动被ajax请求填充,因此我只有元素$(this)

所以...

我必须做:

$('.my-dropdown').live('click', function(){
  total_tems = $(this).find('option').length;
});

最好的形式是这样

$('#example option').length

另一种可能有用的方法。

$('#select-id').find('option').length
本文地址:http://javascript.askforanswer.com/jisuanjqueryzhongxuanzebiaoqianzhongdexuanxiangbiaoqiandeshuliang.html
文章标签: ,   ,  
版权声明:本文为原创文章,版权归 javascript 所有,欢迎分享本文,转载请保留出处!

文件下载

老薛主机终身7折优惠码boke112

上一篇:
下一篇:

评论已关闭!