jQuery的添加自定义的验证
问题描述:
我有以下几点:jQuery的添加自定义的验证
$('#qForm').validate({
rules: {
answerYesNo_1: { required:true } ,
answerYesNoText_1: { required: function(element) {
return $('#answerYesNo_1').val() == 'yes';
}
, isMoney: true },
answerYesNo_2: { required:true } ,
answerYesNoText_2: { required: function(element) {
return $('#answerYesNo_2').val() == 'yes';
}
, isMoney: true },
answerYesNo_3: { required:true } ,
answerYesNoText_3: { required: function(element) {
return $('#answerYesNo_3').val() == 'yes';
}
, isMoney: true },
answerYesNo_4: { required:true } ,
answerYesNoText_4: { required: function(element) {
return $('#answerYesNo_4').val() == 'yes';
}
, isMoney: true },
answerYesNo_5: { required:true } ,
answerYesNoText_5: { required: function(element) {
return $('#answerYesNo_5').val() == 'yes';
}
, isMoney: true }
},
...
jQuery.validator.addMethod("isMoney", function(value, element) {
alert(/^\$?[0-9][0-9\,]*(\.\d{1,2})?$|^\$?[\.]([\d][\d]?)$/.test(value));
return /^\$?[0-9][0-9\,]*(\.\d{1,2})?$|^\$?[\.]([\d][\d]?)$/.test(value);
});
我已经是它忽略了所需要的功能的第一部分的问题:
return $('#answerYesNo_1').val() == 'yes'
说:我选择“不” answerYesNo_2,回答YesNo_3,回答YesNo_4,回答YesNo_5,我会为他们中的每一个获得假。如果答案是否定的,则不应该进行isMoney验证。任何帮助?
答
试试这个:
$.validator.addMethod("isMoney", function (value, element) {
alert(/^\$?[0-9][0-9\,]*(\.\d{1,2})?$|^\$?[\.]([\d][\d]?)$/.test(value));
return /^\$?[0-9][0-9\,]*(\.\d{1,2})?$|^\$?[\.]([\d][\d]?)$/.test(value);
});
$.validator.addMethod(
'equalToParam',
function (value, element, param) {
return $.trim(value) == param;
},
'Do not match.'
);
$('#qForm').validate({
rules: {
answerYesNo_1: {
required: true,
equalToParam: 'yes'
},
answerYesNoText_1: {
required: true,
isMoney: true
},
answerYesNo_2: {
required: true
},
answerYesNoText_2: {
required: true,
equalToParam: 'yes'
isMoney: true
},
answerYesNo_3: {
required: true
},
answerYesNoText_3: {
required: true,
equalToParam: 'yes'
isMoney: true
},
answerYesNo_4: {
required: true
},
answerYesNoText_4: {
required: true,
equalToParam: 'yes'
isMoney: true
},
answerYesNo_5: {
required: true
},
answerYesNoText_5: {
required: true,
equalToParam: 'yes'
isMoney: true
}
},
在接下来的时间,或者如果我的一段代码不行就http://jsfiddle.net/请
+0
这不演示工作。 jsFiddle是在评论部分的原始文章后面添加的。谢谢 – CFNinja
http://jsfiddle.net/k45w9/ – CFNinja