如何在Jquery验证中使用RUle函数中的IF ELSE条件。
我在一些字段中使用一个表单,需要选项1,并且选项2需要一些字段。
实施例
对于下面的代码,我需要选项1的名称和地址,以及选项2的名称和URL。如何使用IF / Else条件。
$(document).ready(function(){
$("#demo-form").validate({
rules: {
name: "required",
address: "required",
url: "required url",
integer: {
required:true,
integer:true,
min: 5
},
}
});
答案 0 :(得分:1)
您可以使用内联if语句:
$(document).ready(function(){
$("#demo-form").validate({
rules: {
name: someCondition ? "required" : "notrequired",
address: "required",
url: "required url",
integer: {
required:true,
integer:true,
min: 5
},
}
});
someCondition
评估过于布尔值,例如:($('selectedOption').val() == 1)
注意:在notrequired
的位置放置任何不正确的属性时的名称。
答案 1 :(得分:0)
sZipCode: page.langID == 1 ? {required: true, minlength: 5, number: true, range: [1, 79999]} : {required: true, minlength: 5, number: true, rangesk: [1000,9999,80000, 99999]},
答案 2 :(得分:0)
depends: function(element) {
if ($(("#selectid option:selected").val() == '3').is(':checked')){
code:"required";
creditLimit:"required";
depositAmont:"required";
idProofNumber:"required";
identyProof:"required";
"panNumber"{panNumber:true;}
return true;
}else{return false;}
},
答案 3 :(得分:0)
这个问题显然已经过时了,但我相信它仍然具有现实意义。当前的Jquery Validate插件包含允许在创建所需字段之前满足条件的语法。例如,如果您希望仅在选中复选框时才需要字段,则您将使用:
$( "#myform" ).validate({
rules: {
email: {
required: "#other:checked"
}
}
});
注意:此处必须选中ID为other
的复选框,以便输入所需的属性name='email'
。
或者,您可以在rules对象中编写一个函数,以在需要单独的元素之前检查另一个元素的值。例如:
$( "#myform" ).validate({
rules: {
age: {
required: true,
min: 3
},
parent: {
required: function(element) {
return $("#age").val() < 13;
}
}
}
});
注意:此处,对于需要属性name='age'
的输入字段,具有属性name='parent'
的输入字段的值必须小于13。在此函数中传递元素参数非常重要。
这两个例子都是针对Jquery Validation Plugin的网站拍摄的,这里是链接:https://jqueryvalidation.org/required-method/
答案 4 :(得分:-1)
为什么不这样做:
$(document).ready(function () {
$("#demo-form").validate({
rules: {
<% if (option1=true) { %>
name: "required",
<% } %>
address: "required",
url: "required url",
integer: {
required: true,
integer: true,
min: 5
},
}
});