带有If/Else语句的Jquery验证规则
Jquery Validation Rules with If/ Else statement
这段代码有效,但我需要它来基本上对id字段执行If Else。如果id长度大于0,则不要根据需要检查名称、邮编。如果id不大于0,则根据需要检查名称、邮政编码等。欢迎您的建议。谢谢,
runAllForms();
$(function () {
$("#artist_create_event").validate({
// Rules for form validation
rules : {
artist_create_event_name : {
required : true
},
artist_create_event_desc : {
required : true
},
id : {
required : true
},
name : {
required : true
},
zipcode : {
required : true
},
venue_name : {
required : true
},
city : {
required : true
},
state : {
required : true
},
location : {
required : true
},
event_address : {
required : true
}
},
// Messages for form validation
messages : {
artist_create_event_name : {
required : 'Enter Event Name'
},
artist_create_event_desc : {
required : 'Enter Event Description'
},
name : {
required : 'Enter Venue Name'
},
zipcode : {
required : 'Please enter Zipcode/Postalcode'
},
venue_name : {
required : 'Enter Venue Name'
},
city : {
required : 'Please enter City'
},
state : {
required : 'Please enter State'
},
location : {
required : 'Please enter Country'
},
event_address : {
required : 'Please enter Address'
}
},
// Do not change code below
errorPlacement : function(error, element) {
error.insertAfter(element.parent());
},
// Ajax form submition
submitHandler: function() {
$('#artist_create_event').hide(0);
$('#art_event_message').hide(0);
$.ajax({
url : 'artist_update_event.php',
type : 'POST',
dataType : 'json',
data: {
artist_create_event_name: $('#artist_create_event_name').val(),
artist_create_event_desc: $('#artist_create_event_desc').val(),
name: $('#name').val(),
city: $('#city').val(),
state: $('#state').val(),
location: $('#location').val(),
zipcode: $('#zipcode').val(),
event_address : $('#event_address').val(),
event_address2 : $('#event_address2').val()
},
success : function(data){
$('#art_event_message').removeClass().addClass((data.error === true) ? 'error' : 'success')
.text(data.msg).show(500);
if (data.error === true) {
if (data.goto == 1) {
delete json;
}
else {
$('#artist_create_event').show(500);
delete json;
}
}
if (data.error === false) {
$('#artist_create_event').show(500);
delete json;
}
},
error : function(XMLHttpRequest, textStatus, errorThrown) {
$('#art_event_message').removeClass().addClass('error')
alert('The error was: '+errorThrown);
alert('The error was: '+XMLHttpRequest);
alert('The error was: '+textStatus);
// .text('response.Text').show(500);
$('#artist_create_event').show(500);
}
});
return false;
}
});
});
您可以将required的值作为下面给出的函数传递,假设id
是输入字段的名称
var $id = $('input[name="id"]')
$("#artist_create_event").validate({
// Rules for form validation
rules: {
artist_create_event_name: {
required: true
},
artist_create_event_desc: {
required: true
},
id: {
required: true
},
name: {
required: function () {
return $id.val().length > 0;
}
},
zipcode: {
required: function () {
return $id.val().length > 0;
}
},
venue_name: {
required: true
},
city: {
required: true
},
state: {
required: true
},
location: {
required: true
},
event_address: {
required: true
}
},
// Messages for form validation
messages: {
artist_create_event_name: {
required: 'Enter Event Name'
},
artist_create_event_desc: {
required: 'Enter Event Description'
},
name: {
required: 'Enter Venue Name'
},
zipcode: {
required: 'Please enter Zipcode/Postalcode'
},
venue_name: {
required: 'Enter Venue Name'
},
city: {
required: 'Please enter City'
},
state: {
required: 'Please enter State'
},
location: {
required: 'Please enter Country'
},
event_address: {
required: 'Please enter Address'
}
},
// Do not change code below
errorPlacement: function (error, element) {
error.insertAfter(element.parent());
},
// Ajax form submition
submitHandler: function () {
$('#artist_create_event').hide(0);
$('#art_event_message').hide(0);
$.ajax({
url: 'artist_update_event.php',
type: 'POST',
dataType: 'json',
data: {
artist_create_event_name: $('#artist_create_event_name').val(),
artist_create_event_desc: $('#artist_create_event_desc').val(),
name: $('#name').val(),
city: $('#city').val(),
state: $('#state').val(),
location: $('#location').val(),
zipcode: $('#zipcode').val(),
event_address: $('#event_address').val(),
event_address2: $('#event_address2').val()
},
success: function (data) {
$('#art_event_message').removeClass().addClass((data.error === true) ? 'error' : 'success')
.text(data.msg).show(500);
if (data.error === true) {
if (data.goto == 1) {
delete json;
} else {
$('#artist_create_event').show(500);
delete json;
}
}
if (data.error === false) {
$('#artist_create_event').show(500);
delete json;
}
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
$('#art_event_message').removeClass().addClass('error')
alert('The error was: ' + errorThrown);
alert('The error was: ' + XMLHttpRequest);
alert('The error was: ' + textStatus);
// .text('response.Text').show(500);
$('#artist_create_event').show(500);
}
});
return false;
}
});
假设id是一个文本框的id。你可以这样做:
name : {
required : $("#id").val().length <= 0
},
zipcode : {
required : $("#id").val().length <= 0
},
相关文章:
- 如何使用jQuery验证引擎验证组
- jQuery:使用“jQuery验证”后无法提交表单's远程验证
- 一个jquery验证器方法,它不接受纯数字或纯特殊字符,但接受上面是否有字母
- jQuery验证器添加方法未定义
- jQuery验证插件submitHandler Ajax
- 使用jquery验证函数不适用于select元素
- 动态jQuery验证
- 如果使用jQuery验证器插件找到单选按钮,则将不同的addMethod应用于字段
- 使用jquery验证信用卡
- 未使用jQuery验证器选中Css样式复选框时
- 自定义jquery验证器
- Jquery验证消息更改(自定义消息集)
- 时间日志的javascript/jquery验证(5小时3米)
- jQuery 验证正在复制 else 语句 |验证完成后,不会打印值
- 将动态验证文本添加到自定义jQuery验证规则中
- Jquery 验证插件 - 字段仍然产生错误
- 验证字段名称 添加 与 使用 jquery 验证
- JQUERY 验证 - 序列化选择和复选框
- jQuery 验证 - 调用某些元素的 .valid() 方法不会清除错误
- 带有jquery验证问题的php表单