使用Jquery选择<select>的值

时间:2017-09-23 04:39:06

标签: jquery

我得到了所有的选项下降 var options = $(&#34; .options&#34;); 然后我尝试一个简单的jquery .val来选择第二个选项 项[0] .VAL(&#34; 1&#34) 我收到以下错误 options [0] .val不是函数 笔记: 的console.log(项[0]); //返回&lt; select&gt; ...&lt; / select&gt; 更新编辑 https://codepen.io/TylerL-uxai/pen/NaxyJK?editors=1010相关代码位于底部附近 - &gt; listsDropDown

3 个答案:

答案 0 :(得分:2)

您可以使用解决方案https://jsfiddle.net/9tao32gm/

$('select option[value="2"]').prop("selected", "selected");
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select>
  <option value="1">1</option>
  <option value="2">2</option>
</select>

如果您使用的是jQuery版本&lt; 1.6然后使用attr代替prop

$('select option[value="2"]').attr("selected", "selected");

希望这会对你有所帮助。

答案 1 :(得分:1)

设置选项的选择有不同的方法:

1. $("#select_id").get(0).selectedIndex=1;  
2. $("#select_id").val(4);   
3. $("#select_id option[text='jQuery']").attr("selected", true);

答案 2 :(得分:0)

$(&#34; .options&#34;)是document.getelementbyclassname,它返回HTML Collection而不是数组。要将其转换为数组,请使用切片和调用。

  var optionsArr = $(".options");
  optionsArr = [].slice.call(optionsArr);
  optionsArr.forEach(function (item, index){ 
    $('.selectList'+index+' option[value='+index+']').attr("selected", "selected");
  });

有关详情,请参阅此回答Using forEach on an array from getElementsByClassName results in “TypeError: undefined is not a function”