如何使用表单加载部分视图并使用Ajax应用dataannoation验证

时间:2014-03-18 06:08:20

标签: jquery asp.net-mvc-4

我有一个要求,我需要使用ajax加载局部视图。我能够加载局部视图但是在提交局部视图时没有触发数据注释验证。

2 个答案:

答案 0 :(得分:0)

传递给视图时,您的模型是否具有DataAnnotations?

答案 1 :(得分:0)

我得到了答案我需要在ajax调用之后注册所有验证,如下所示:   并且需要在布局页面上添加以下脚本

   ~/Scripts/jquery.validate.js
   ~/Scripts/jquery.validate.unobtrusive.js
   ~/Scripts/jquery.unobtrusive-ajax.js

    $.ajax({
    type: "GET",
    url: url,
    data: data,
    cache: false,
    success: function (data)
    {
        $('#' + targetDivId).html(data);
        $('#' + formid).removeData('validator');
        $('#' + formid).removeData('unobtrusiveValidation');
        $('#' + formid).each(function () { $.data($(this)[0], 'validator', false); });         //enable to display the error messages
        $.validator.unobtrusive.parse('#' + formid);
        if (callbackfunc)
            return callbackfunc();
    }
});