环境:jquery
示例代码:
$("#fbldid").click(function(){
var so=$("#fbldid").selectedOptions();//获取选中的options项数组var s=new Array();
for(var x=0;x<so.length;x++){
s.push(so[x].text);//将选中的值保存进数组
}
$("#selmsg").html(s.join(", "));//通过一个html标签显示出来选中的值
});
以上代码用意是动态的根据用户选中多选列表中的值显示出来,但IE6死活得不到正确的选中项数组,网上有hack ie6的方法,我没用,觉的太恶心了!
取巧的办法:
$("#fbldid").blur(function(){
var so=$("#fbldid").selectedOptions();//获取选中的options项数组var s=new Array();
for(var x=0;x<so.length;x++){
s.push(so[x].text);//将选中的值保存进数组
}
$("#selmsg").html(s.join(", "));//通过一个html标签显示出来选中的值
});
2段代码完全一样,就触发事件从click转换成blur了,放弃动态实时显示用户选中的值了,通过多选列表失去焦点时,再触发显示选中值了!牺牲一点灵活性!鄙视IE6!!