下面是一段设置下拉列表框选中项的代码
但是为毛只能在IE下可以正常执行,在Firefox,Chrome,360,猎豹浏览器下没有反应,不得而解
<html> <head> <script type="text/javascript" src="http://www.w3school.com.cn/jquery/jquery.js"></script> <script type="text/javascript"> $(document).ready(function(){ $(".btn1").click(function(){ $("#tb_check1").find("option[text='Yes']").attr("selected", true); }); }); </script> </head> <body> <select id="tb_check1" style="height:22px;width:81px;" name="tb_check1"> <option value=""></option> <option value="No">No</option> <option value="Yes">Yes</option> </select> <button class="btn1">check</button> </body> </html>
这样的属性(true false checked selected)推荐使用jQuery的prop()方法。
Thanks for your answer, I appreciate it, you're a nice guy!
attr("selected", selected);
试试吧
把true改成select会报错
把true改成selected会报错
@流光溢辉: $("#tb_check1>option[value='Yes']").attr("selected",true);
试试
@流光溢辉: 应该可以了把
@骑着蜗牛耍流氓: 你这种方法可行,我知道还有种方法 $("#tb_check1").val("Yes"),这种方法也可行;
我就想知道$("#tb_check1").find("option[text='Yes']").attr("selected", true);
这种方法为什么会出问题呢
@流光溢辉:
option[text='Yes']意思是:option标签有个叫text属性的值为Yes
你看看你的option标签有没有text这个属性,没把? 你的标签有value属性,你把value改成text后你之前那种做法就可以了
@流光溢辉:
你说的是这种吧:
$("#tb_check1>option").val("Yes").attr("selected",true);
这是匹配到你<option>Yes</option>标签内的文本值了,所以也可以
@骑着蜗牛耍流氓: 直接这样写$("#tb_check1").val("Yes"); 设置value="Yes"的选项为选中项
@流光溢辉: 嗯 这种也可以
@骑着蜗牛耍流氓: 非常感谢你哈,明天就周末了,你们要加班么
@流光溢辉:
加毛的班,不干!
@流光溢辉: 不用谢,我也是初学者
@骑着蜗牛耍流氓: 这么叼,你在哪座城市,我在深圳
@流光溢辉: 我在上海,目前还在学习后台中。。没事做
@骑着蜗牛耍流氓: 你做的是java web开发?
@流光溢辉:
不是,java只了解一点点基础,我是做C#的
@骑着蜗牛耍流氓: 我原来是做java web,现在因为公司业务需要,转做c#,以后有问题可以向你请教啊
@流光溢辉: 好,我会的就告诉你,因为后台知识我也不太熟悉
@流光溢辉: 注意结贴哦~
方法很多,可以直接使用Val绑定对应的值的选项,也可以设置选择项,或者设置选择项的索引。