使用ajax()发布的asp.net核心不打扰的验证

时间:2018-12-12 21:17:12

标签: razor asp.net-core unobtrusive-validation

我正在使用ajax()在asp.net核心/剃须刀页面中添加部分视图。使用非侵入式验证时,我不会从错误中的[Display(Name = "Year of Graduation")]引用中获得自定义错误消息或字段名,也不会返回给客户端。我只会得到“此字段是必填字段。”

以下代码似乎允许不打扰的验证工作:

$ajax({
  //code removed for brevity
})
.done(function (response) {
                    //LOAD PARTIAL
                    $("#grad-form").html(response);

                    var form = $("#gaform")
                        .removeData("validator")
                        .removeData("unobtrusiveValidation");

                    $.validator.unobtrusive.parse(form);
});

ref:https://stackoverflow.com/a/14982495/2343826

但是,我希望它从客户端错误中的数据注释中获取字段名称。显示属性:[Display(Name = "Year of Graduation")]

无效字段上的原样错误消息:

  

“此字段为必填项”

但是理想的结果是:

  

“需要今年毕业。”

注意:如果未使用ajax()动态加载所需的结果,它将可以正常工作。 (我想我只需要在"unobtrusiveValidation"之后重设.parse(form),但我不知道如何)

0 个答案:

没有答案