ASP.NET MVC 3 jQuery验证;禁用不引人注意的OnKeyUp?
发布时间:2020-05-23 11:23:00 所属栏目:asp.Net 来源:互联网
导读:有没有办法禁用某个验证器(信用卡)的jQuery验证,以便它只发生在onblur,而不是onkeyup? 基于jQuery Validator文档,我以为我可以这样做: $(function () { $([data-val-creditcard]).validate({ onkeyup: false })}); 但是,它似乎没有起作用。 我也尝试在
|
有没有办法禁用某个验证器(信用卡)的jQuery验证,以便它只发生在onblur,而不是onkeyup? 基于jQuery Validator文档,我以为我可以这样做: $(function () {
$("[data-val-creditcard]").validate({
onkeyup: false
})
});
但是,它似乎没有起作用。 我也尝试在我的验证器上执行以下操作: public class CreditCardValidator : DataAnnotationsModelValidator<CreditCardAttribute>
{
string _message;
public CreditCardValidator(ModelMetadata metadata,ControllerContext context,CreditCardAttribute attribute)
: base(metadata,context,attribute)
{
_message = attribute.ErrorMessage;
}
public override IEnumerable<ModelClientValidationRule> GetClientValidationRules()
{
var rule = new ModelClientValidationRule
{
ErrorMessage = _message,ValidationType = "creditcard"
};
rule.ValidationParameters.Add("onkeyup",false);
return new[] { rule };
}
}
它也不起作用,但是我正在使用ValidationParameters来适当使用。 以一种形式输入信用卡号,使其随机从无效更改为有效,然后返回无效,这是一种烦人的事情。 有任何想法吗?谢谢! 解决方法好吧,我在同一个问题,发现这个线程:http://old.nabble.com/-validate–onkeyup-for-single-field-td21729097s27240.html 这个想法基本上是覆盖keyup事件并返回false。所以在你的具体情况下,你需要添加: $('#my-form').validate({
rules: {
[...]
}
}
// Disable keyup validation for credit card field
$("[data-val-creditcard]").keyup(function() { return false } );
而您会看到,您的信用卡字段仅在模糊或提交时进行检查(但其余的则在键盘上工作)。 我正在寻找同样的解决方案,并发现这里的答案可以改进,所以我认为这将是很好的分享在这里。 (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
- asp.net-mvc-4 – 为什么ResolveBundleUrl不能用
- asp.net – web.config文件中的特殊字符
- asp.net-mvc-4 – Twitter Bootstrap nuget包差异
- asp.net-mvc-4 – 简单会员:用户的上次登录日期
- 选择完成后和提交上传之前的asp.net FileUpload事
- asp.net-mvc-3 – 方法“OrderBy”必须在方法“跳
- entity-framework – 为什么ASP.NET SPA模板会为
- asp.net – 获取连接到SignalR hub的客户端数量
- asp.net-mvc – 使用ASP.NET会员资格和配置文件与
- asp.net – 使用Elmah处理Web服务中的异常
热点阅读
