2013-10-15 74 views
6

我遇到本地化問題。在巴西,我們使用逗號作爲小數點分隔符,而不是點。例如:允許使用點號和逗號數字,不僅用於小數點

500,00 
120,21 
0,0001 

我發現基於這個答案的解決了這個問題:「」 MVC 3 jQuery Validation/globalizing of number/decimal field

但在巴西,我們也使用在數量上,如:

100.000.000,00 
11.125,23 

還有一件事:

10.000 <> 10,000 

第一個是一萬,第二個是簡單十名。

使用全球化插件時,當用戶輸入「。」時,會顯示驗證錯誤。 我嘗試使用數據註釋DisplayFormat,但它沒有按預期工作... 要「解決」這個問題,我使用javascript來手動設置和刪除「。」。從場上的數字來看,但是當我們需要改變任何東西時,這是非常有問題的(我相信這是我可以使用的最糟糕的方法之一)。你們有什麼想法在這種情況下如何進行?

還有一個問題:我可以創建一個模型聯編程序(或修改現有的)來接受這個數字格式?

回答

10

我剛找到答案。

Fixing binding to decimals

它在我的情況下完美地工作。這傢伙解決了我遇到的完全相同的問題!

我剛剛修改的幾行代碼,但最重要的部分是這條線:

ModelBinders.Binders.Add(typeof(decimal), new DecimalModelBinder()); 

我修改了它接受空的值。

相關問題