【原】解决 ie6下select 控件的selected属性无效

来源:互联网 发布:低价位耳机推荐知乎 编辑:程序博客网 时间:2024/05/01 15:19
 由于某度众所周知的举动,让我搬离写了5年的渣度空间,准备把技术性的文章定在CSDN了。这些都是文章备份。勿怪。。

鉴于最近有些抓取机器和抄袭者,把标题的【原】字都复制,我不得不声明:本文为 yukon12345原创,转载请注明出处http://blog.csdn.net/yukon12345

 

一般来说在select里的option设置个selected或者selected=“selected”就能设置默认项比如:

<select>

 <option value="1" >1</option>

<option value="2" selected>2</option>

</select>

正常情况下默认选中第二项。但今天发现个问题,死活不能默认显示第二项,而是默认一直第一项。

比如下面一个例子:

我是在ie6环境下 ajax后 成功函数里动态添加的select。

$.ajax({

.......

 success:function(text){

//图方便直接text传值,用|||分开
data=text.split("|||")

//这里是生成其他的代码
$("#catalog").html(data[0]);

//这里是生成select下拉列表的代码
$(".page_html").html(data[1])

}})

想了半天,后来把位置对调一下,居然就成功了。。

//这里是生成select下拉列表的代码
$(".page_html").html(data[1])

//这里是生成其他的代码
$("#catalog").html(data[0]); 

ie6的bug真是莫名其妙。。。

另一个靠谱的方法是保存选择后的selectedIndex,然后用js来重新设置一次select的默认选项。比如我用page这个js全局变量来保存用下拉列表选择后的selectedIndex。

$(".page_html option").eq(page).attr("selected",true)


原创粉丝点击