I have this validator form code I have inherited which I am getting this error:
$.validator.methods[method] is undefined
and under that it's showing
'maxlength:$.validator.format("Please enter no more than {0} characters.")'
I have read that it could be spelling mistake or method being called that's not there. But can't see it.. even read about remote data element could be causing issue but taken it out it breaks.
edit: I have uploaded none compressed js code and error points to this line
var result = $.validator.methods[method].call( this, element.value.replace(/\r/g, ""), element, rule.parameters );
code:
$(document).ready(function(){
$("#regForm").validate({
rules:{
confirmemailaddress: {
equalTo: "#emailaddress"
},
password: {
password: "#username"
},
adminpassword: {
adminpassword: "#adminusrname"
},
retypepassword: {
equalTo: "#password"
},
retypenewpassword: {
equalTo: "#newpassword"
},
retypeadminpassword: {
equalTo: "#adminpassword"
},
interest2: {
notEqualTo: "#interest"
},
retypenewadminpassword: {
equalTo: "#newadminpassword"
},
emailaddress: {
remote: {
url: $("#validationUrl").val(),
type: "post",
data: {
emailaddress: function() {
return $("#emailaddress").val();
},
registrationtype: function() {
return $("#registrationtype").val();
},
userctx: function() {
return $("#userctx").val();
},
identityid: function() {
return $("#identityid").val();
}
}
}
},
username: {
remote: {
url: $("#validationUrl").val(),
type: "post",
data: {
username: function() {
return $("#username").val();
},
registrationtype: function() {
return $("#registrationtype").val();
},
userctx: function() {
return $("#userctx").val();
}
}
}
},
adminusrname: {
notEqualTo: "#username",
remote: {
url: $("#validationUrl").val(),
type: "post",
data: {
username: function() {
return $("#adminusrname").val();
},
registrationtype: function() {
return $("#registrationtype").val();
},
userctx: function() {
return $("#userctx").val();
}
}
}
},
oldauthusername: {
remote: {
url: $("#validationUrl").val(),
type: "post",
data: {
username: function() {
return $("#oldauthusername").val();
},
registrationtype: function() {
return $("#registrationtype").val();
},
userctx: function() {
return $("#userctx").val();
}
}
}
}
},
messages: {
instname:{
required: "Please specify the name of your institution"
},
firstname:{
required: "Please specify your First Name",
minlength: jQuery.format("At least {0} characters required!")
},
lastname:{
required: "Please specify your Name",
minlength: jQuery.format("At least {0} characters required!")
},
interest:{
required: "Please choose an interest area"
},
interest2:{
required: "Please choose a second interest area",
notEqualTo: "Please choose a different interest area to the above"
},
emailaddress:{
required: "We need your Email Address to contact you",
email: "Your Email Address must be in the format [email protected]",
remote: jQuery.format("{0} is already in use")
},
confirmemailaddress:{
required: "Please confirm your Email Address",
email: "Your Email Address must be in the format [email protected]",
equalTo: "Please enter the same Email Address as above"
},
username: {
required: "Please specify your User Name",
minlength: jQuery.format("At least {0} characters required!"),
remote: jQuery.format("{0} is already in use")
},
oldauthusername: {
required: "Please specify your User Name",
minlength: jQuery.format("At least {0} characters required!"),
remote: jQuery.format("{0} is already in use")
},
password: {
required: "Please specify your Password",
minlength: jQuery.format("At least {0} characters required!")
},
retypepassword: {
required: "Please retype your Password",
minlength: jQuery.format("At least {0} characters required!"),
equalTo: "Enter the same password as above"
},
adminusrname: {
required: "Please specify your User Name",
minlength: jQuery.format("At least {0} characters required!"),
remote: jQuery.format("{0} is already in use"),
notEqualTo: "Your username must be different to the institution username"
},
adminpassword: {
required: "Please specify your Password",
minlength: jQuery.format("At least {0} characters required!")
},
retypeadminpassword: {
required: "Please retype your Password",
minlength: jQuery.format("At least {0} characters required!"),
equalTo: "Enter the same Password as above"
},
retypenewpassword: {
required: "Please retype your New Password",
minlength: jQuery.format("At least {0} characters required!"),
equalTo: "Enter the same password as above"
},
termsandconditions: {
required: "Please tick the checkbox to confirm that you have read and agree to the terms and conditions before proceeding."
}
}
});
$("#ipmarker .asterix").hide();
$("#logincredmarker .asterix").hide();
$("#validateContact").click(function() {
var errors = false;
var firstError;
$(".contact .required").each(function() {
if(!$("#regForm").validate().element(this))
{
if (! errors)
firstError = $(this);
errors = true;
}
});
$(".contact .email").each(function() {
if(!$("#regForm").validate().element(this))
{
if (! errors)
firstError = $(this);
errors = true;
}
});
if(errors)
{
firstError.focus();
return false;
}
else
{
$(".contact").hide();
$(".authentication").show();
if($('#usrname').is(':checked'))
$("#usrname").parent("legend").parent("fieldset").find(".regInput").find(".optRequired").addClass("required");
$(".regStep2").removeClass("linkDisabled");
scroll(0,0);
return false;
}
});
var validateAuthenticationStep = function(){
if ( ( $("#oldauthhiddenusername").val() != null && $("#oldauthhiddenusername").val() != '')
|| ( $("#oldauthusername").val() != null && $("#oldauthusername").val() != '')
|| ( $("#iprange").val() != null && $("#iprange").val() != '')
|| ( $("#username").val() != null && $("#username").val() != '')
|| ( $("#externalid").val() != null && $("#externalid").val() != '')
)
{
var errors = false;
$(".authentication .required, .authentication .checkIP, .authentication .email").each(function() {
if(!$("#regForm").validate().element(this))
{
if (! errors)
firstError = $(this);
errors = true;
}
});
if(errors)
{
firstError.focus();
return false;
}
else
return true;
}
else
{
$(".authenticationselectionerror").show();
scroll(0,0);
}
}
$("#validateAuthentication").click(function() {
if($("#username").val()!="") {
$("#password").addClass("required");
$("#retypepassword").addClass("required");
}
else
{
$("#password").removeClass("required");
$("#retypepassword").removeClass("required");
}
if (validateAuthenticationStep())
{
$(".authentication").hide();
$(".authenticationAdmin").show();
$(".regStep3").removeClass("linkDisabled");
}
return false;
});
$("#validateUpdateAuthentication").click(function() {
if(validateAuthenticationStep())
$("#regForm").submit();
return false;
});
});
You are getting this error because you're calling a non-existent rule
...
rules: {
//other rules,
interest2: {
notEqualTo: "#interest"
},
}
notEqualTo
is not a valid rule included within this plugin. You must remove it or create a new rule called notEqualTo
by using the plugin's built-in addMethod()
method. Something like this...
jQuery.validator.addMethod('notEqualTo', function(value, element, param) {
return value != jQuery(param).val();
}, 'Must not be equal to {0}.' );
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With