2011-05-12 120 views
1

我在Flex中使用了mx:DateField,它與日期選擇器很好地工作,但我也需要它是可編輯的,所以我設置了editable =「true」。彈性格式輸入輸入的數據(日期字段/日期)?

問題是,現在用戶可以輸入他們想要的任何東西 - 即使我有一個formatString =「YYYY-MM-DD」集合。日期選擇器會遵循這種格式,但如果用戶輸入格式爲MM/DD/YYYY,他們可以 - 或者甚至可以輸入垃圾數據。

我意識到我可以設置一個數據驗證程序來檢查它是一個有效的日期,並按照flex文檔的格式進行檢查,但我希望能夠在其他語言中看到其中的文本字段顯示諸如「0000-00-00」之類的東西,並且用戶點擊該字段並允許它們僅改變數字(零),並且不能鍵入任何字母字符或添加/刪除任何長度。

任何想法?

回答

0

嘗試使用masked text input

+0

這看起來不錯,甚至包括來源。剩下的唯一要做的就是創建一個小日期字段日曆圖標並彈出日期選擇器。也許這是一個不同的組件? –

+0

你可以自己放置圖標,點擊彈出DateChooser。 – Constantiner

+0

但是被屏蔽的測試輸入控件在選擇日期後沒有拋出任何值,或者輸入mean selelctedDate&text屬性爲空並且爲空。我正在使用Flex 4.5 –

0

就我個人而言,我不會使用DateField。我會創建一個自定義組件,其中包含3個獨立的TextInputs,每個年份,每月和每天都有一個,並且如果用戶想手動選擇日期,則在右側有一個DateChooser。

您必須添加邏輯才能讓焦點從一個文本輸入跳轉到另一個文本輸入。你甚至可以讓它們看起來像是在同一個組件中,其間有破折號。用戶認爲它只是一個組件,但它實際上是一個複合組件。

Anywho,只是我的2美分。我之前做過這個,效果很好。