天天看點

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html><head><meta http-equiv="Cont

EasyUI版本:jQuery EasyUI 1.4.1

Chrome浏覽器版本:41.0.2272.101 m

問題描述

在Chrome浏覽器下,下拉框選擇選項之後,選擇的值在下拉框中不顯示,重新選擇,下拉框的值也能自動反選,說明是已經選中了

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html><head><meta http-equiv="Cont

而在IE8浏覽器下正常

問題分析

EasyUI是基于jQuery的,相容性應該杠杠的,于是使用Chrome通路官方網站的示例,結果發現官網示例可以正常顯示

于是,使用Chrome的調試工具,詳細分析了下html代碼

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html><head><meta http-equiv="Cont

發現html不是特别規範,option的顯示内容多了一些空格和換行,這應該就是不相容問題的根本原因了

解決辦法

找到了問題的原因,于是删掉多餘的空格和換行,重新在Chrome浏覽器下測試,結果ok

問題總結

問題的根本原因不是EasyUI,而是因為代碼不規範導緻。頁面是JSP開發的,代碼如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html><head><meta http-equiv="Cont

看起來貌似沒什麼問題,但是實際上生成的html是不規範的

修改後的代碼如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html><head><meta http-equiv="Cont