2016-01-25 48 views
3

我使用jQuery驗證不顯眼的Asp.Net MVC 5項目。驗證以英語進行,但我想用其他語言,例如挪威語。jquery驗證本地化

我發現messages_no.js這裏https://github.com/jzaefferer/jquery-validation/tree/master/src/localization幷包括在jquery.validate.jsjquery.validate.unobtrusive.js之後的js文件。我可以在開發人員工具中看到它正確地包含在頁面中,但錯誤消息仍然是英文的。

我錯過了什麼嗎?

+0

你使用Html助手來生成窗體控件嗎? – tmg

+0

是的,我正在使用Html助手。 – Aleksa

回答

3

從控件的html屬性(data-val-)中檢索錯誤消息。 使用屬性的DataAnnotations生成服務器端控件(Html.EditorFor)。

因此,例如,而不是

[Required(ErrorMessage = "Required")] 
public string Email { get; set; } 

你應該使用的資源(.resx文件)

[Required(ErrorMessageResourceType = typeof(Resource), ErrorMessageResourceName = "Required"]  
public string Email { get; set; } 

確保Thread.CurrentThread.CurrentCultureThread.CurrentThread.CurrentUICulture在所需的文化設置。

+0

謝謝,它的工作原理!我還有一個問題。是否可以在全局範圍內定義該錯誤消息,因此我不必在需要的任何屬性中指定它。 – Aleksa

+0

您希望每個視圖模型上的每個屬性都是必需的? – tmg

+0

我希望只能寫[Requried],並且它會自動從Resources.Required中獲取它。如果可能的話...... – Aleksa