代码之家  ›  专栏  ›  技术社区  ›  vtortola

使用jQuery迭代HTML select中的选项

  •  2
  • vtortola  · 技术社区  · 15 年前

    我从一个博客上得到了这个例子,但是每次我这样做:

    $(':input[name=' + inputName + ']').each(function(i, selected)
    {
        alert($(selected).text());
    });
    

    我得到了一个警报,所有选项都在一起:(

    我总是要按输入名搜索,输入没有id。

    哪种方法是正确的?

    3 回复  |  直到 15 年前
        1
  •  5
  •   Nikita Rybak    15 年前

    那是因为 select 标记由jquery找到,而不是 option 标签

    这将为您提供选项列表。

    $(':input[name=' + inputName + '] option').each(function(i, selected) {
        alert($(selected).text());
    });
    

    An example

        2
  •  1
  •   Bobby Borszich    15 年前

    假设您的HTML与此类似

    <SELECT NAME="mylist">
      <option>Volvo</option>
      <option>Saab</option>
      <option>Mercedes</option>
      <option>Audi</option>
    </SELECT>
    

    <OPTION> 标签,你的选择器在 <SELECT> 标签

    var inputName = mylist;
    $(':input[name=' + inputName + '] option').each(function(i, selected)    {
            alert($(selected).text());
    });
    
        3
  •  1
  •   Stephen    15 年前

    $(":input[name='" + inputName + "'] option").each(function(i, selected) {
        alert($(selected).text());
    });