首頁 >web前端 >js教程 >ie8模式下click無反應點選option無反應的解決方法

ie8模式下click無反應點選option無反應的解決方法

PHPz
PHPz原創
2016-05-16 16:34:191677瀏覽

點擊select裡面的option,將其賦值到上面的input,直接用jQuery寫的,問題是在用IE8打開的時候,點擊option沒有任何反應。

實現的效果比較常見的一種,點擊select裡面的option,將其賦值到上面的input,直接用jQuery寫的:

$("#cardNoList option").click(function(){
$("#card").attr("value","").attr("value",this.value); 
})

有個奇怪的事情,由於面向的使用者基本上都是用的360瀏覽器這類國內雙核心瀏覽器,加了本機Eclipse跑是用的chrome核心進行解析,放到測試環境,就變成ie8標準進行解析了。

現在問題來了,學挖掘…額,不是!

在用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 

經提醒,改為:

$("#cardNoList").click(function(){
$("#card").val(this.value);
}

以上就是本章的全部內容,更多相關教學請訪問jQuery影片教學

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn