asp.net-mvc-3 – .NET MVC 3中的jQuery不显眼验证 – 显示成功复选标记
发布时间:2020-05-24 12:04:20 所属栏目:asp.Net 来源:互联网
导读:在.NET MVC项目中使用jQuery不引人注目的验证,似乎工作正常.我正在尝试在字段正确验证(客户端和/或远程)时显示绿色复选标记. 这是一个示例字段声明: div class=clearfix @Html.LabelFor(model = model.Address1, Street) div class=input
|
在.NET MVC项目中使用jQuery不引人注目的验证,似乎工作正常.我正在尝试在字段正确验证(客户端和/或远程)时显示绿色复选标记. 这是一个示例字段声明: <div class="clearfix">
@Html.LabelFor(model => model.Address1,"Street")
<div class="input">
@Html.TextBoxFor(model => model.Address1,new { @class = "xlarge",@maxlength = "100",@placeholder = "e.g. 123 Main St" })
<span class="help-message">
@Html.ValidationMessageFor(model => model.Address1)
<span class="isaok">Looks great.</span>
</span>
<span class="help-block">Enter the street.</span>
</div>
</div>
我想要做的是在“span.isaok”中添加一个“有效”类,后者又有一个背景图像的复选标记. 我尝试使用高亮/不亮: $.validator.setDefaults({
onkeyup: false,highlight: function (element,errorClass,validClass) {
$(element).addClass(errorClass).removeClass(validClass);
$(element.form).find("label[for=" + element.id + "]").addClass("error");
$(element).parent().find("span.isaok").removeClass("active");
},unhighlight: function (element,validClass) {
$(element).removeClass(errorClass).addClass(validClass);
$(element.form).find("label[for=" + element.id + "]").removeClass("error");
if ($(element).val().length > 0) {
$(element).parent().find("span.isaok").addClass("active");
}
}
}); 但即使它们是空的,它也显示所有字段的绿色复选标记! (因此显然是错误的) 然后我尝试使用’success’选项,但似乎永远不会被解雇. 我错过了什么? 编辑:所以我找到this blog post并且能够利用成功功能,即 $(function () {
var settings = $.data($('form')[0],'validator').settings;
settings.onkeyup = false;
settings.onfocusout = function (element) { $(element).valid(); };
var oldErrorFunction = settings.errorPlacement;
var oldSuccessFunction = settings.success;
settings.errorPlacement = function (error,inputElement) {
inputElement.parent().find("span.isaok").removeClass("active");
oldErrorFunction(error,inputElement);
};
settings.success = function (label) {
var elementId = '#' + label.attr("for");
$(elementId).parent().find("span.isaok").addClass("active");
oldSuccessFunction(label);
};
});
但是现在如果表单无效,它会同时显示错误消息和有效标记…… 一旦我点击页面上的任何地方,后者就会消失. 解决方法这似乎是jquery.validate.unobtrusive干扰稍后在$.validator.setDefault中添加的设置的问题.诀窍是在自定义设置后加载不显眼的脚本.见 here并投票修复它 here.(编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – System.Web.Optimization与Microsoft.Web.O
- asp.net-mvc – 使用自己的HtmlHelper扩展名用于模型绑定的
- asp.net-mvc – 如何正确识别vs2008版本级别?
- 对ASP.Net组件套件有什么好评
- asp.net-mvc – MVC4 Razor – @ Html.DisplayFor没有绑定到
- asp.net – CookieAuthenticationOptions.AuthenticationTy
- RSS2.0中文规范详解及示例
- asp.net-mvc – HttpContext.Items与ASP.NET MVC
- asp.net-mvc – 更改ASP.NET MVC 3中的默认ModelState错误消
- asp.net-mvc – ASP.NET MVC中的Windows Live ID
推荐文章
站长推荐
- 从ASP.NET应用程序直接将文件上传到Amazon S3
- asp.net – 如何在web.config中指定根(/)位置?
- 取消选中时,ASP.NET CheckBox不会启动CheckedCha
- asp.net-mvc – 如何在asp.net core mvc中配置确
- 向ASP.NET Gridview添加动态列
- asp.net-mvc – 菜单上没有添加控制器,无法在MVC
- asp.net-mvc – RavenDB部署问题
- ASP.NET MVC授权:角色的权限
- asp.net – NuGet:’X’已经有一个依赖定义为’
- asp.net-mvc-3 – 从JsonResult MVC3 / Razor中动
热点阅读
