下拉框<select>设置选中项的一个问题

本文探讨了使用jQuery设置下拉框选中项的两种方法:通过select.val()和option:eq(index).attr('selected', 'selected')。指出第二种方法在多次调用时存在失效问题,并推荐使用第一种方法。

基于jQuery,有两种方式设置下拉

1、$("select").val(); 
2、$("option:eq(1)").attr("selected","selected");

方法2有个问题就是只能设置一次下拉框,重复调用设置失效

<script>
$(function(){
});
function sltOpt(){
  $("select").val(1);
}
function sltOpt2(i){
  var a = "option:eq("+i+")"
  $(a).attr("selected",true);
}
</script>

<button onclick="sltOpt()" id="btn0">val()设置为1</button>
<button onclick="sltOpt2(1)" id="btn1">select()设置为1</button>
<button onclick="sltOpt2(2)" id="btn2">select()设置为2</button>
<select>
    <option value=0>0</option>
    <option value=1>1</option>
    <option value=2>2</option>
    <option value=3>3</option>
</select>

当点击btn1的时候下拉框选中1,再点击btn2时下拉框选择2,当再点击btn1时下拉框选中状态没改变还是2,当手动选择下拉框为3后,再点击btn2下拉框也没反应

下拉框选择设置还是用

$("select").val();

好些,不会出现方法2失效的情况

posted on 2018-05-11 17:49  離家不遠 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/imbasaber/p/9025931.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值