Jquery表单验证/ Asp MVC模型绑定 - 在Name中有句点

时间:2013-06-28 18:04:05

标签: jquery asp.net asp.net-mvc

我正在使用asp mvc模型绑定来绑定其中包含对象的模型。所以

class SuperModel{
public ObjectA{get;set;}
}

然后在我看来我正在使用@ Html.TextBoxFor(model> = SuperModel.ObjectA.SomeProperty)。

我的问题是我正在使用JQuery表单验证,如您所知,TextBoxFor将自动生成ObjectA.SomeProperty的名称,这是需要发生的事情,因此模型绑定有效,但在我的jquery验证代码中,我有:

  form.validate({               
            rules: {                   
                ObjectA.FName: {//INVALID BECAUSE OF PERIOD OBVIOUSLLY
                    minlength: 5,
                    required: true
                },

所以我需要Jquery验证来处理一个名称中包含句点的html字段。我该怎么做呢?或者,还有更好的方法。谢谢!

2 个答案:

答案 0 :(得分:5)

如果在规则定义中的输入名称周围加上引号会怎样?

form.validate({               
         rules: {                   
             'ObjectA.FName': {//added quotes
                 minlength: 5,
                 required: true
             },

可能需要逃避'。'在输入名称=> 'ObjectA \ .FName':{...}

注意:我会把它作为评论,但我还没有代表发表评论。

答案 1 :(得分:1)

经过一天的解决后,emgee的解决方案对我有用。我正在使用mvc4 / razor和分布式jQuery Validation Plugin 1.11.1

 @Html.TextBoxFor(m => m.PersonnelBio.Firstname, new {  @class = "classname" })

jquery代码:

           form1.validate({ 
            rules: {
                'PersonnelBio.Firstname': {
                    minlength: 2,
                    required: true
                },...