我已阅读其他帖子,但无法弄清楚为什么我的部分必填字段未在提交时验证。我正在帮助客户端客户端验证他的脚本,并将表单发布到另一方。在我的服务器上:http://alluringassets.com/caitlin/projects/validationscript/index.html。如果我专注于事件日期,它将验证信息,但如果我从不关注它,我点击提交 - 该程序不验证位置,组大小,事件日期,但验证顶部字段。有什么想法吗?
$.validator.addMethod("groupMin", function(value) {
return $("#00NG0000008iHKH").val() >= 6;
}, 'Sorry, but we only handle groups of 6 or more.');
$.validator.addMethod("seoNO", function(value) {
return $("#00NG0000008iHKg").match(/SEO/g);
}, 'No thank you! We are not interested in Search Engine Optimization support.');
$.validator.setDefaults({
//submitHandler: function() {
//form.submit();
//alert("submitted!"); }
});
$().ready(function() {
var validator = $("#detailRequestForm").bind("invalid-form.validate", function() {
$("#summary").html("Your form contains " + validator.numberOfInvalids() + " errors. Please correct.");
}).validate({
rules: {
firstname: "required",
lastname: "required",
email: {
required: true,
email: true
},
company: {
required: true,
minlength: 2
},
'00NG0000008iHK7': {//Program Location
required: true,
minlength: 2
},
'00NG0000008iHKH': //Group Size
"groupMin",
'00NG0000008iHKR': {//Event Date
required: true,
minlength: 3
},
'00NG0000008iHKg':"seoNO",
},
messages: {
firstname: "Please enter your firstname",
lastname: "Please enter your lastname",
email: "Please enter a valid email address",
company: "We do not serve private groups. Sorry, we can't help you.",
'00NG0000008iHK7': //Program Location
"Where will the program be located?",
'00NG0000008iHKH':{//Group Size
required:"Please enter the number of members in the group.",
},
'00NG0000008iHKR': {//Event Date
required: "Please enter a date or TBA if you are unsure."
},
'00NG0000008iHKg': {//Comments
//required: "Please enter any comments or questions you may have."
}
},
errorElement: "em",
errorContainer: $("#warning, #summary"),
//highlight: function(label) {
//$(label).removeClass("success").addClass('error');
//},
//success: function(label) {
//label.text("ok!").empty().addClass("success");
//}
});
});
答案 0 :(得分:0)
不知何故,我想出了一切。如果有人对以下作品感兴趣。
// JavaScript Document
//Script written by Caitlin Havener
//Utilizing jQuery validation plugin
//Visit sneakymommedia.com to hire me!
$.validator.addMethod("groupMin", function(value) {
return $("#00NG0000008iHKH").val() >= 6;
}, 'Sorry, but we only handle groups of 6 or more.');
/*$.validator.addMethod("seoNO", function(value) {
return $("#00NG0000008iHKg").match("/SEO/g");
}, 'No thank you! We are not interested in Search Engine Optimization support.');*/
$.validator.setDefaults({
submitHandler: function() {
//form.submit();
alert("submitted!"); }
});
$.validator.addMethod(
"regex",
function(value, element, regexp) {
var re = new RegExp(regexp);
return this.optional(element) || !re.test(value);
},
"No thank you! We are not interested in Search Engine Optimization support."
);
$().ready(function() {
var validator = $("#detailRequestForm").bind("invalid-form.validate", function() {
$("#summary").html("Your form contains " + validator.numberOfInvalids() + " errors. Please correct.");
}).validate({
//debug: true,
rules: {
firstname: "required",
lastname: "required",
email: {
required: true,
email: true
},
company: {
required: true,
minlength: 2
},
'00NG0000008iHK7': {//Program Location
required: true,
minlength: 2
},
'00NG0000008iHKH': //Group Size
"groupMin",
'00NG0000008iHKR': {//Event Date
required: true,
minlength: 3
},
'00NG0000008iHKg':{
//"seoNO",
regex: / SEO |SEO| seo |seo|Search Engine Optimization | Search Engine Optimization |Search Engine Optimization/
}
},
messages: {
firstname: "Please enter your firstname",
lastname: "Please enter your lastname",
email: "Please enter a valid email address",
company: "We do not serve private groups. Sorry, we can't help you.",
'00NG0000008iHK7': //Program Location
"Where will the program be located?",
'00NG0000008iHKH':{//Group Size
required:"Please enter the number of members in the group.",
},
'00NG0000008iHKR': {//Event Date
required: "Please enter a date or TBA if you are unsure."
},
'00NG0000008iHKg': {//Comments
//required: "Please enter any comments or questions you may have."
}
},
errorElement: "em",
errorContainer: $("#warning, #summary"),
validClass: "success",
focusCleanup: true,
success: function(label) {
label.text("ok!").addClass("success");
}
});
});
答案 1 :(得分:-1)
ID不应该以数字开头 - 这可能会使验证插件绊倒。是什么阻止您调用这些字段location
,groupsize
和eventdate
?
<强>更新强>
遵循声明字段的逻辑,你会错过后面字段的一些大括号:
company: {
required: true,
minlength: 2
},
'00NG0000008iHK7': { //Program Location = missing opening curly
required: true,
minlength: 2
},
'00NG0000008iHKH': { //Group Size - opening curly
"groupMin"}, // closing curly
'00NG0000008iHKR': { //Event Date - opening curly
required: true,
minlength: 3
},
'00NG0000008iHKg': {
"seoNO", // opening curly
}