首頁 > web前端 > js教程 > 主體

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

PHPz
發布: 2018-09-30 15:07:12
原創
1652 人瀏覽過

點擊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影片教學

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板