ie8模式下click無反應點擊option無反應的解決方法
想起了小學時候數(shù)不盡的一件小事,哎,那夕陽下的奔跑,是我逝去的青春啊。
言歸正傳,先上圖:
<select id="cardNoList" size="4"></select>
實現(xiàn)的效果比較常見的一種,點擊select里面的option,將其賦值到上面的input,直接用jQuery寫的:
$("#cardNoList option").click(function(){
$("#card").attr("value","").attr("value",this.value);
})
有個奇怪的事情,
由于面向的用戶基本上都是用的360瀏覽器這類國內雙核瀏覽器,加了
<meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1"/>
本機Eclipse跑是用的chrome內核進行解析,放到測試環(huán)境,就變成ie8標準進行解析了。
現(xiàn)在問題來了,學挖掘……額,不是!
在用IE8打開的時候,點擊option沒有任何反應。
加alert試了下:
$("#cardNoList option").click(function(){
alert("111");
$("#card").attr("value","").attr("value",this.value);
alert("222");
})
click完全沒有調用到。
一開始以為是jQuery的click事件在ie8下的兼容問題,但jQuery對兼容都封裝解決了,應用如此廣,按理不會就我碰到。
后來想到,可能是在ie8下click根本沒有加到option上面去,改了改,將click加到select上,成了,ie8、Firefox、chrome都可以順利賦值到input里。
$("#cardNoList").click(function(){
$("#card").attr("value","").attr("value",this.value);
})
百度了下,貌似“眾所周知,在IE里, select的option是不支持onclick事件的” o(╯□╰)o
經(jīng)提醒,改為:
$("#cardNoList").click(function(){
$("#card").val(this.value);
})
- jQuery解決下拉框select設寬度時IE 6/7/8下option超出顯示不全
- JQuery操作Select的Options的Bug(IE8兼容性視圖模式)
- IE6/7/8中Option元素未設value時Select將獲取空字符串
- 解決IE下select標簽innerHTML插入option的BUG(兼容IE,FF,Opera,Chrome,Safari)
- javascript option onclick事件ie解決方案 兼容ie,firefox
- IE不支持option的display樣式,只能使用remove和add
- 用jQuery解決IE不支持的option disable屬性
- IE8中動態(tài)創(chuàng)建script標簽onload無效的解決方法
- IE6瀏覽器中window.location.href無效的解決方法
- IE中鼠標經(jīng)過option觸發(fā)mouseout的解決方法
相關文章
jquery 之 $().hover(func1, funct2)使用方法
.hover(func1, func2) 的效果等效于: mouseenter(), mouseleave()2012-06-06

