2010-07-14 54 views
0

Hai, 我正在使用SmartGwt Java。要使用keyPressFilter格式化價格,請提出任何正則表達式。它只接受0-9和單個小數。 現在我正在使用KeyPress處理程序。如果它是空的(默認),則使用TextItem.setEmptyDisplayValue(「0.00」)將此值設置爲「0.00」。所以第一次它會接受單個小數點的事件,但是還有一個小數點(「0.00」)。爲這個問題提供解決方案。 在此先感謝。 Regards, Sathya。TextItem with Price Filter

回答

0

許多不同的解決方案都是可能的。

按任意鍵後將空白字段變爲「0.00」的內容是令人驚訝的,甚至可能令用戶感到不安;我不會那樣做。如果你要幫助他,你必須徹底完成,提供相當於一個輸入編輯器。否則,讓他做他的工作,並在他試圖將焦點轉移到現場時檢查最終結果。

正則表達式是檢查輸入的一種方法;但單獨完成,這是一個懶惰和無效的解決方案。每次擊鍵都可以訪問整個輸入文本。您可以通過在keyUp時間檢查輸入文本中是否已經有小數點來解決您的問題,如果不是,則不允許另一個小數點。你可以做類似的事情,以防止在小數點後輸入2位以上的數字。