【问题标题】:Unable to clear ModelState errors client side? Is it even possible?无法清除客户端的 ModelState 错误?甚至可能吗?
【发布时间】:2016-09-15 12:37:42
【问题描述】:

显然,我在我的视图中使用@Html.ValidationSummary() 来显示用户发布到我的控制器时可能发生的任何错误。

不过这是我的场景

  • 用户发帖到控制器和ModelState.IsValid = false;
  • @Html.ValidationSummary() 向用户显示我的错误消息。
  • 现在用户更正错误并单击提交按钮。
    但是我想清除该错误消息,因为我可能会在帖子实际发生之前向用户提供另一个选项(客户端脚本)。

我尝试了各种技术来隐藏“验证摘要”部分,但均无济于事。

function resetValidation() {

    $("form").data("valmsg-summary").hide();
    $(".field-validation-error").addClass("field-validation-valid");
    $(".input-validation-error").addClass("input-validation-valid");
    $(".validation-summary-errors").addClass("validation-summary-valid");

    $(".field-validation-error").removeClass("field-validation-error");
    $(".input-validation-error").removeClass("input-validation-error");
    $(".validation-summary-errors").removeClass("validation-summary-errors");
};

这是我提交按钮的脚本。

$("#btnSubmit").click(function (e) {
        resetValidation();  // Trying to suppress/clear error messages

        var doPost = true;
        var p1 = $("#Field1").val();
        var p2 = $("#Field2").val();
        var p3 = $("#Field3").val();

        $.ajax({
            type: "GET",
            url: "/MyController/MyAction",
            data: { "param1": p1, "param2": p2, "param3": p3 },
            async: false
        }).done(function (data) {
            if (data > 999)
            {
                // I then display a new set of fields for the user to answer 
                doPost = false;
            }
        }).fail(function (xhr, status, err) {
            alert(xhr.responseText);
        });

        return doPost;
    });

我是不是走错了路?
是否可以清除客户端的模型视图错误?

【问题讨论】:

  • $(".validation-summary-errors").empty(); 应该删除错误消息
  • 这似乎行得通! ty

标签: javascript jquery asp.net-mvc validation


【解决方案1】:

感谢 Stephen Muecke 的解决方案:

$(".validation-summary-errors").empty();

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-11-20
    • 1970-01-01
    • 1970-01-01
    • 2018-10-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多