如何通过jquery验证避免隐藏字段的验证?
我有一个下拉列表,其中的条件有Required、Option和hidden,大约有8个文本字段。很少有字段得到验证并抛出错误消息,即使字段是隐藏的。如何避免这种情况?请帮忙 我的代码是:如何通过jquery验证避免隐藏字段的验证?,jquery,jquery-plugins,Jquery,Jquery Plugins,我有一个下拉列表,其中的条件有Required、Option和hidden,大约有8个文本字段。很少有字段得到验证并抛出错误消息,即使字段是隐藏的。如何避免这种情况?请帮忙 我的代码是: function responseFunction(res) { //1:mandatory //2:optional //3:hidden var str = res.split("~"); for (i in str) { va
function responseFunction(res) {
//1:mandatory
//2:optional
//3:hidden
var str = res.split("~");
for (i in str)
{
var field= str[i].split(':');
switch (field[0]) {
case "BillingAddressLine1":
switch (field[1]) {
case "1":$('#ContentSection_lblBillingInfoAddress').prepend('<span>*</span>');
$("#<%= txtBillingInfoAddress.ClientID %>").rules("add", {required : true, messages : {
required : 'Please Enter Address' }});
break;
case "3":$('#ContentSection_lblBillingInfoAddress, #ContentSection_txtBillingInfoAddress').hide().parent('p').css("paddingTop", "0px");
break;
}
break;
case "BillingFullName":
switch (field[1]) {
case "1":$('#ContentSection_lblBillingInfoAccountHolderName').prepend('<span>*</span>');
$("#<%= txtBillingInfoAccountHolderName.ClientID %>").rules("add", {required : true, messages : {
required : 'Please Enter Account Holder Name' }});
break;
case "3":$('#ContentSection_lblBillingInfoAccountHolderName, #ContentSection_txtBillingInfoAccountHolderName').hide().parent('p').css("paddingTop", "0px");
break;
}
break;
}
}
函数响应函数(res){
//1:强制性
//2:可选
//3:隐藏
var str=res.split(“~”);
对于(我在str中)
{
var field=str[i].split(“:”);
开关(字段[0]){
案例“BillingAddressLine1”:
开关(字段[1]){
案例“1”:$('#contentSectionlbillingInfo地址')。前缀('*');
$(“#”)规则(“添加”,{required:true,消息:{
必需:“请输入地址”});
打破
案例“3”:$('#ContentSection_lbillinginfo address,#ContentSection_txtbillingfoaddress').hide().parent('p').css(“paddingTop”,“0px”);
打破
}
打破
案例“BillingFullName”:
开关(字段[1]){
案例“1”:$(“#contentSectionlbillingInfoAccountHolderName”).prepend(“*”);
$(“#”)规则(“添加”,{required:true,消息:{
必填项:“请输入帐户持有人名称”});
打破
案例“3”:$(“#contentsectionlbillinginfoaccountholdername,#ContentSection_txtbillingfoaccountholdername”).hide().parent('p').css(“paddingTop”,“0px”);
打破
}
打破
}
}
我的截图是:
向所有隐藏元素添加一个class属性,并使用
ignore
属性忽略所有这些元素:
<input type='hidden' class='hiddenClass' />
$('form').validate({
ignore: '.hiddenClass'
});
$('form')。请验证({
忽略:'.hiddenClass'
});
向所有隐藏元素添加一个class属性,并使用ignore
属性忽略所有这些元素:
<input type='hidden' class='hiddenClass' />
$('form').validate({
ignore: '.hiddenClass'
});
$('form')。请验证({
忽略:'.hiddenClass'
});
隐藏时删除字段验证
$('#targetId').rules('remove');
在可见时重新添加验证
$('#targetId').rules('add', {
required: true
});
隐藏时删除字段验证
$('#targetId').rules('remove');
在可见时重新添加验证
$('#targetId').rules('add', {
required: true
});
在下面的案例陈述中做一个检查
var control = $("#<%= txtBillingInfoAddress.ClientID %>");
if($(control).is(':hidden')){
// remove validation
}
var-control=$(“#”);
如果($(控件).is(':hidden')){
//删除验证
}
只需检查下面的case语句即可
var control = $("#<%= txtBillingInfoAddress.ClientID %>");
if($(control).is(':hidden')){
// remove validation
}
var-control=$(“#”);
如果($(控件).is(':hidden')){
//删除验证
}
隐藏javascript方法的验证,例如:
function lalala()
{
var validator1 = document.getElementById('Validator1ClientID');
ValidatorEnable(validator1, false);
}
隐藏javascript方法的验证,类似于:
function lalala()
{
var validator1 = document.getElementById('Validator1ClientID');
ValidatorEnable(validator1, false);
}
“请找到我的截图。”-你上次在哪里看到的?试着回溯你的步骤…(好的,抱歉,只是开玩笑。也许你可以显示你的代码?)这里没有截图…!!!@Sivasentil:你正在使用哪个验证引擎?“请找到我的截图。”-你上次在哪里看到的?试着回溯你的步骤。。。(好的,对不起,只是开玩笑。也许你可以展示你的代码?)这里没有截图…!!!@Sivasentil:您使用的是哪个验证引擎?您的答案是根据哪个验证引擎/库来确定的?@nnnnn,Vishal:我添加了我的screenshot@Jitendra:我正在使用Jquery验证plugin@JitendraPancholi答案是根据jQuery验证插件。您的答案是根据哪个验证引擎/库?@nnnnn,Vish艾尔:我加了我的名字screenshot@Jitendra:我正在使用Jquery验证plugin@JitendraPancholi答案是根据jQuery验证插件。