解決Kendo UI NumericTextBox注音輸入法數字輸入問題

自己用是倉頡輸入法,Kendo UI數字欄位(NumericTextBox)一直用得很開心,直到同事回報: NumericTextBox配上IE瀏覽器,使用注音輸入法時無法用鍵盤數字區(鍵盤右方的數字盤)輸入數字,使用Chrome或Firefox則無此問題。[Bug示範 (用IE+注音輸入法可重現問題)]

追進原始碼,判斷問題出在NumericTextBox的keydown事件,使用注音輸入法時,數字盤的按鍵代碼在IE與其他瀏覽器可能不同導致差異。原本已經捲好袖子要開始Hacking,福至心靈想到另一個巧妙解法: -ms-ime-mode!

既然是IE獨有的問題,用IE獨有的功能解決剛剛好! 遇到數字欄位時強迫把中文輸入法關掉,就不用煩惱注音輸入法的按鍵代碼跟別人有什麼不同。在CSS中加入一條新規則:

/* kendoNumericTextBox 注音數字輸入問題修正 */
.k-numeric-wrap > input
{
    /* 在IE下啟用注音輸入法無法用數字盤輸入,故停用IME */
    -ms-ime-mode: disabled;
    ime-mode: disabled;
}

靠著一條CSS規則,談笑間茶包灰飛煙滅,不亦快哉! 線上展示

歡迎推文分享:
Published 09 August 2013 09:17 PM 由 Jeffrey
Filed under:
Views: 5,870



意見

沒有意見

你的看法呢?

(必要的) 
(必要的) 
(選擇性的)
(必要的) 
(提醒: 因快取機制,您的留言幾分鐘後才會顯示在網站,請耐心稍候)

5 + 3 =

搜尋

Go

<August 2013>
SunMonTueWedThuFriSat
28293031123
45678910
11121314151617
18192021222324
25262728293031
1234567
 
RSS
創用 CC 授權條款
【廣告】
twMVC

Tags 分類檢視
關於作者

一個醉心技術又酷愛分享的Coding魔人,十年的IT職場生涯,寫過系統、管過專案, 也帶過團隊,最後還是無怨無悔地選擇了技術鑽研這條路,近年來則以做一個"有為的中年人"自許。

文章典藏
其他功能

這個部落格


Syndication