JavaScript - 获取列表选项的长度

时间:2012-10-31 19:34:18

标签: javascript html drop-down-menu

有没有办法在select-dropdown HTML输入标签中获取列表选项的长度?列表动态变化,我需要计算下拉列表中的选项总数。总选项是动态生成的,因此我需要一种方法来计算html选择标记中的选项标记数。我还需要在纯JS中执行此操作,因为我正在使用的应用程序将不允许我使用JQuery。 (请不要与我争论,除非绝对没有办法在纯JS中这样做。)

只需与Internet Explorer兼容。

我认为这与访问DOM有关,但我不确定语法是如何确定的。

4 个答案:

答案 0 :(得分:19)

由于您没有指定可以使用jQuery,请尝试以下方法:

<强> HTML:

<select id="test">
  <option>1</option>
  <option>2</option>
  <option>3</option>
  <option>4</option>
</select>​

<强> JavaScript的:

​document.getElementById("test").options.length

<强> example

答案 1 :(得分:1)

从选择输入中选择选项,然后用长度

计算它们
$("#input1 option").length

答案 2 :(得分:1)

我使用JQuery完成了

$(document).ready(function() {
    $("button").click(function(){
      var optionLength = $("#user option").length;
      
           alert("length of options is : "+optionLength);
    });
});
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width">
  <title>Get length of list Options</title>
</head>
  <script src="https://code.jquery.com/jquery-1.12.4.min.js"></script>

<body>
<select id="user" multiple="" size="5" class="form-control" id="participants" name="participants" style="height: 98px !important;">
  <option value="1">S RAJ</option>
  <option value="2"> SHARMA</option>
  <option value="3">SINGH</option>
  <option value="4"> ROY</option>
  <option value="5">VERMA</option>
  <select>
    <button type="button">Get Users</button>
</body>
</html>

答案 3 :(得分:0)

<select id="lister-sort-by-options" name="sort" class="lister-sort-by">
    <option value="0" selected="selected">
      Movies
    </option>
    <option value="1">
      TV Shows
    </option>
    <option value="2">
      Morning Shows
    </option>
    <option value="3">
      Moonlight
    </option>
    <option value="4">
      Music
    </option>
</select>