解决jquery.validate.js的验证bug
版本提示:jq为1.4.4, jquery.validate 为jQuery validation plug-in 1.7
问题:
a.选填选项,如邮箱设置格式验证,那么情况输入框,验证label变成空白的【原来的默认提示没了】
b.必填选项,如手机号码直接复制进去,格式是对的,验证label是不变的
1.母版页
$(function () {
$.validator.setDefaults({
errorClass: "tip-error",
errorPlacement: function (error, element) {
error.prependTo(element.parents("td").next());
objError.removeClass("btn_infomust");
objError.html(error);
},
success: function (element) {
element.html("正确").addClass("tip-success");
}
});
});
2.表单页代码示例
<tr>
<th scope="row">
手机号码:
</th>
<td>
@Html.TextBoxFor(t => t.PhoneNO, new { @Style = "width:200px", maxlength = "" })
</td>
<td class="slight">
<label class="btn-infomust">必填项。</label>
</td>
</tr>
<tr>
<th scope="row">
邮箱地址:
</th>
<td>
@Html.TextBoxFor(t => t.Email, new { @Style = "width:200px", maxlength = "" })
</td>
<td class="slight">
<span class="btn-info">选填项。</span>
</td>
</tr>
3.jquery.validate.js文件代码
解决:注意代码是写死的,需根据自己的去改
//360行前后
if(element.value==""){if($(element).rules().required != true&&$(element).rules().required != false){$(element).parents("td").next("td").html('<label class="btn-info">选填项。</label>');}} element: function (element) {
//规则required不存在时,则还原默认提示
if (element.value == "") {
if ($(element).rules().required != true && $(element).rules().required != false) {
$(element).parents("td").next("td").html('<label class="btn-info">选填项。</label>');
}
} return result;
}
//670行前后
showLabel: function (element, message) {
//手工替换label
$(element).parents("td").next("td").html(label); console.log(label);
this.toShow = this.toShow.add(label);
},
版本提示:jq为1.9.1, jquery.validate 为jQuery Validation Plugin 1.9.0,jquery.validate.unobtrusive.js,使用Model验证
问题:
当第一次页面加载时,直接删除必填字段的文本框内容,不会提示错误信息【猜测:未初始化】
代码:
$.extend($.validator, {
defaults: {
onfocusout: function (element, event) {
if (element.value == "") {//此部分为修改的代码
if ($(element).rules().required == true) {
$(element).valid();
}
}
if (!this.checkable(element) && (element.name in this.submitted || !this.optional(element))) {
this.element(element);
}
},
}
}
解决jquery.validate.js的验证bug的更多相关文章
- jquery.validate.js 无法验证隐藏域
隐藏域中的字段无法验证解决办法 修改 jquery.validate.js 中的 ignore: ":hidden",
- jquery.validate.js客户端验证
参考:http://www.runoob.com/jquery/jquery-plugin-validate.html http://www.cnblogs.com/artech/archive/20 ...
- jquery.validate.js 验证表单时,在IE当中未验证就直接提交的原因
jquery.validate.js 验证表单时,在IE当中未验证就直接提交的原因 今天利用了jquery.validate.js来验证表单,发现在火狐.谷歌浏览器当中都可以进行验证,但是在IE系列浏 ...
- 关于Jquery.validate.js中动态删除验证remove方法的Bug
利用Jquery.validate.js 来做动态验证的时候,需要特定的情况下,删除添加opAmount的必须入力的Check $("#form").validate({ rule ...
- 表单验证插件之jquery.validate.js
提到表单验证的插件,第一个想到的就是jquery.validate.js,所以小生想在这里稍微详细地说一下这款插件的具体使用方法,便于理解,我直接附上整段demo的代码(没怎么调样式,主要是看js): ...
- jquery.validate.js表单验证
一.用前必备官方网站:http://bassistance.de/jquery-plugins/jquery-plugin-validation/ API: http://jquery.bassist ...
- aspx中的表单验证 jquery.validate.js 的使用 以及 jquery.validate相关扩展验证(Jquery表单提交验证插件)
这一期我们先讲在aspx中使用 jquery.validate插件进行表单的验证, 关于MVC中使用 validate我们在下一期中再讲 上面是效果,下面来说使用步骤 jQuery.Valid ...
- (转)jquery.validate.js 的 remote 后台验证
之前已经有一篇关于jquery.validate.js验证的文章,还不太理解的可以先看看:jQuery Validate 表单验证(这篇文章只是介绍了一下如何实现前台验证,并没有涉及后台验证remot ...
- 【转】jquery.validate.js表单验证
一.用前必备官方网站:http://bassistance.de/jquery-plugins/jquery-plugin-validation/ API: http://jquery.bassist ...
随机推荐
- iOS FMDB的使用(增,删,改,查,sqlite存取图片)
iOS FMDB的使用(增,删,改,查,sqlite存取图片) 在上一篇博客我对sqlite的基本使用进行了详细介绍... 但是在实际开发中原生使用的频率是很少的... 这篇博客我将会较全面的介绍FM ...
- 使用sencha cmd 一键生成你的应用程序代码
一键生成你的应用程序代码: ------------------------------------------------------------ 我们的出发点就是使用命令来产生一个应用程序,执行以 ...
- javaScript基础语法(下)
4.逻辑控制语句 4.1条件结构 条件结构分为if结构和switch结构. 通常在写代码时,您总是需要为不同的决定来执行不同的动作.您可以在代码中使用条件语句来完成该任务. 在 JavaScript ...
- 【转】Android开发之如何保证Service不被杀掉(broadcast+system/app)
Service简介 1.Service 每个Service必须在manifest中 通过<service>来声明. 可以通过contect.startservice和contect.bin ...
- 让vc2010的项目在vc2012也能直接使用,而不必修改PlatformToolSet
在Visual Studio 2010新建的项目到2012里打开会要求修改PlatformToolset的值,从v100改为v110.如果这个项目需要进版本管理(VCS,如git, svn),这将造成 ...
- Linux 执行partprobe命令时遇到Unable to open /dev/sr0 read-write (Read-only file system)
在使用fdisk创建分区时,我们会使用partprobe命令可以使kernel重新读取分区信息,从而避免重启系统,但是有时候会遇到下面错误信息"Warning: Unable to open ...
- 开启Tomcat 源码调试
开启Tomcat 源码调试 因为工作的原因,需要了解Tomcat整个架构是如何设计的,正如要使用Spring MVC进行Web开发,需要了解Spring是如何设计的一样,有哪些主要的类,分别是用于干什 ...
- 挖一挖C#中那些我们不常用的东西之系列(3)——StackTrace,Trim
时间太快了,三月又要过去了,告别一下...继续期待生死未卜的四月,今天我们继续挖一挖. 一: Environment.StackTrace 可能我们看到最多的就是catch中的e参数,里面会有一个St ...
- 0016 Java学习笔记-异常-如果try-catch-finally中都存在return语句会怎样?
上午在搜索"System.runFinalization"的时候,搜到 http://www.cnblogs.com/Skyar/p/5962253.html ,其中有关于try- ...
- Boost.log
=================================版权声明================================= 版权声明:本文为博主原创文章 未经许可不得转载 请通过右 ...