【发布时间】: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