gpt4 book ai didi

asp.net-mvc - 如何在验证摘要中显示 MVC 3 客户端验证结果

转载 作者:行者123 更新时间:2023-12-03 20:19:25 25 4
gpt4 key购买 nike

我有一个注册表单,我在上面使用客户端验证(在我的 View 模型上指定的必需、StringLength 等)。表单目前几乎是脚手架创建它的方式:

@using (Html.BeginForm("Index", "Registration"))
{
@Html.ValidationSummary(true)
<fieldset>
<legend>Registration details</legend>
@Html.ValidationSummary(false, "Please correct these errors:")
@Html.ValidationMessageFor(model => model.Username)
<div class="editor-label">
@Html.LabelFor(model => model.Username)
</div>
<div class="editor-field">
@Html.EditorFor(model => model.Username)
</div>
<p>
<input type="submit" value="Register" />
</p>
</fieldset>
}
唯一的区别是我将 ValidationMessageFor 移到了 ValidationSummary 下方的右上角。
我想做的是在验证摘要中显示客户端验证错误。目前,它们仅显示在表单顶部,但不使用验证摘要。如何使用验证摘要显示客户端验证错误?这甚至可能吗?
更新
Darin 我在一个新项目中使用了你的代码,这就是客户端验证开始时的样子:
Client side validation http://tinypic.com/images/404.gif
我希望这会显示在验证摘要中,并应用验证摘要样式。我还提交了表格,然后看起来像这样:
After submit

谢谢,
b3n

最佳答案

这篇文章似乎解释了如何将客户端验证摘要添加到验证摘要中:

http://geekswithblogs.net/stun/archive/2011/01/28/aspnet-mvc-3-client-side-validation-summary-with-jquery-validation-unobtrusive-javascript.aspx

但是我没有亲自测试它,它似乎与您的代码没有任何区别。如果它不起作用,最好查看一个实际放置验证错误的函数上的 jquery.validate.unobtrusive.js 文件:

function onErrors(form, validator) {  // 'this' is the form element
var container = $(this).find("[data-valmsg-summary=true]"),
list = container.find("ul");

if (list && list.length && validator.errorList.length) {
list.empty();
container.addClass("validation-summary-errors")
.removeClass("validation-summary-valid");

$.each(validator.errorList, function () {
$("<li />").html(this.message).appendTo(list);
});
}
}

关于asp.net-mvc - 如何在验证摘要中显示 MVC 3 客户端验证结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5150476/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com