[英]How to check if two input fields are filled in and wait 2 seconds using jquery
[英]Using JQuery how do I check two fields that I need one filled only
使用jQuery,我的用户只需要输入一个字段,ssn或phone,但是如何在jquery中进行校验以确认一个是check?
<script type="text/javascript">
$(document).ready(function () {
$("#memberrequest").validate({
rules: {
phonenumber: {
minlength: 12,
maxlength: 12
},
ssn: {
minlength: 10,
maxlength: 10
}
}
});
});
</script>
请帮帮我
我根据您发布的内容为您做了一个小提琴,它仍然必须进行自定义,但它可以说明您的要求。
http://jsfiddle.net/whytheday/QP4wd/1/
$(document).ready(function () {
$("#memberrequest").validate({
rules: {
phonenumber: {
minlength: 12,
maxlength: 12,
required: {
depends: function(element){
return $("#ssn").val().trim() == ""
}
}
},
ssn: {
minlength: 10,
maxlength: 10,
required: {
depends: function(element){
return $("#phonenumber").val().trim() == ""
}
}
}
}
});
});
您只需将其设置为必填,然后可以设置依赖项,然后可以检查其他字段是否具有值。
查看“必需”的选项http://docs.jquery.com/Plugins/Validation/Methods/required#dependency-expression 。 您可以指定依赖项表达式或依赖项回调。 这意味着您要提供一些javascript代码(在class属性中,示例仅说明了required:true),并且您说的是“如果我的代码评估为true,那么此form元素是必需的”。
因此,在您的情况下,电话号码和ssn字段都需要依赖项表达式,例如“如果另一个为空,则需要此”。
您可以遍历两个字段,然后查看其中一个是否具有值:
$( function () {
var passesValidation = false;
$('input').each( function() {
if ( $(this).val() ) { passesValidation = true; } // could add optional check against length for this field
// $(this).val().length && $(this).val().length >= $(this).attr('data-minlength') or some such
});
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.