ie select 下拉框自動收縮、需要點擊兩次才能展開,默認option不可選

問題描述:

開發一個需求,在select下要求點擊進來就將期中的某一項option不可選,主義是在onchange事件觸發前,開始考慮用到onclick、onfocus這兩個事件,在其他瀏覽器都是沒問題的,可以直接 $ (‘select ‘).children(‘option[value="’+val+’"]’).prop(‘disabled’,true),都是沒有問題的,但是ie下有問題,查詢得知ie8及以前的版本,option不支持 disabled 屬性(我的ie11),但是我的ie也有問題。

  1. 問題一:onclick()事件,會造成下拉框點擊後,迅速收縮,再次點擊還是會收縮
  2. 問題二:onfocus()事件,會造成下拉框需要點擊兩次才能正常顯示。

解決方案:

各種嘗試都是在這兩個方法上,沒有結果。最後更換**onmouseover()**事件,當鼠標以上select就觸發事件,利用 $ (‘select ‘).children(‘option[value="’+val+’"]’).prop(‘disabled’,true),這樣再次點擊就能正常打開select框,並且打開時也對相應的option做了不可選操作

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章