2016-01-25 49 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