This question is locked. New answers and comments are not allowed.
Hi,
I am working with telerik grid, When i am trying validation using any regular expression it is not working with 2010.2.930.235 version, I am getting error in jQuery.validate.min.js.. It was working well with the previous version.. Any suggestion would be a great help..
Thanking you in Anticipation..
Regards,
Dhaval
I am working with telerik grid, When i am trying validation using any regular expression it is not working with 2010.2.930.235 version, I am getting error in jQuery.validate.min.js.. It was working well with the previous version.. Any suggestion would be a great help..
Thanking you in Anticipation..
Regards,
Dhaval
6 Answers, 1 is accepted
0
Hello Dhaval,
Atanas Korchev
the Telerik team
We are not aware of this problem. Could you please provide a sample project? Just attach it to this forum thread.
Regards,Atanas Korchev
the Telerik team
Do you want to have your say when we set our development plans?
Do you want to know when a feature you care about is added or when a bug fixed?
Explore the
Telerik Public Issue Tracking
system and vote to affect the priority of the items
0
Dhaval
Top achievements
Rank 2
answered on 25 Oct 2010, 08:41 AM
Hi Atanas ,
Thanks for your reply.. Let me explain my problem in detail..
Here it is Property Declation for email in Model:
Same Property in Editor Template:
Now when i try to insert new record in the Telerik Grid, i am getting the following error in jquery.validate.min.js:
and Insert is working well if i remove the the regular expression validation from property declaration that is:
Waiting for your reply..
Thanks & Regards,
Dhaval
Thanks for your reply.. Let me explain my problem in detail..
Here it is Property Declation for email in Model:
<DisplayName("Email ID")><Required(ErrorMessageResourceName:="Err_NameRequired", ErrorMessageResourceType:=GetType(Resources.ScwmCtsRes))><RegularExpression("^[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.(([0-9]{1,3})|([a-zA-Z]{2,3}))$", ErrorMessageResourceName:="Err_EmailNotValid", ErrorMessageResourceType:=GetType(Resources.ScwmCtsRes))>Public Property emailid As StringSame Property in Editor Template:
<td ><strong><%= Html.Label(Resources.ScwmCtsView.Client_emailid)%></strong></td><td ><strong><%= Html.EditorFor(Function(model) model.emailid)%></strong><font color="red"><%= Html.ValidationMessageFor(Function(model) model.emailid)%></font></td>Now when i try to insert new record in the Telerik Grid, i am getting the following error in jquery.validate.min.js:
$.validator.methods[method] is undefined
(function($){$.extend($.fn,{validate:function(options){if(!this.length){options&&options.debug&&window.console&&console.warn("nothing
selected, can't validate, returning nothing");return;}var
validator=$.data(this[0],'validator');if(validator){return
validator;}validator=new
$.validator(options,this[0]);$.data(this[0],'validator',validator);if(validator.settings.onsubmit){this.find("input,
button").filter(".cancel").click(function(){validator.cancelSubmit=true;});if(validator.settings.submitHandler){this.find("input,
button").filter(":submit").click(function(){validator.submitButton=this;});}this.submit(function(event){if(validator.settings.debug)event.preventDefault();function
handle(){if(validator.settings.submitHandler){if(validator.submitButton){var
hidden=$("<input
type='hidden'/>").attr("name",validator.submitButton.name).val(validator.submitButton.value).appendTo(validator.currentForm);}validator.settings.submitHandler.call(validator,validator.currentForm);if(validator.submitButton){hidden.remove();}return
false;}return
true;}if(validator.cancelSubmit){validator.cancelSubmit=false;return
handle();}if(validator.form()){if(validator.pendingRequest){validator.formSubmitted=true;return
false;}return handle();}else{validator.focusInvalid();return
false;}});}return
validator;},valid:function(){if($(this[0]).is('form')){return
this.validate().form();}else{var valid=true;var
validator=$(this[0].form).validate();this.each(function(){valid&=validator.element(this);});return
valid;}},removeAttrs:function(attributes){var
result={},$element=this;$.each(attributes.split(/\s/),function(index,value){result[value]=$element.attr(value);$element.removeAttr(value);});return
result;},rules:function(command,argument){var
element=this[0];if(command){var
settings=$.data(element.form,'validator').settings;var
staticRules=settings.rules;var
existingRules=$.validator.staticRules(element);switch(command){case"add":$.extend(existingRules,$.validator.normalizeRule(argument));staticRules[element.name]=existingRules;if(argument.messages)settings.messages[element.name]=$.extend(settings.messages[element.name],argument.messages);break;case"remove":if(!argument){delete
staticRules[element.name];return existingRules;}var
filtered={};$.each(argument.split(/\s/),function(index,method){filtered[method]=existingRules[method];delete
existingRules[method];});return filtered;}}var
data=$.validator.normalizeRules($.extend({},$.validator.metadataRules(element),$.validator.classRules(element),$.validator.attributeRules(element),$.validator.staticRules(element)),element);if(data.required){var
param=data.required;delete
data.required;data=$.extend({required:param},data);}return
data;}});$.extend($.expr[":"],{blank:function(a){return!$.trim(""+a.value);},filled:function(a){return!!$.trim(""+a.value);},unchecked:function(a){return!a.checked;}});$.validator=function(options,form){this.settings=$.extend(true,{},$.validator.defaults,options);this.currentForm=form;this.init();};$.validator.format=function(source,params){if(arguments.length==1)return
function(){var args=$.makeArray(arguments);args.unshift(source);return
$.validator.format.apply(this,args);};if(arguments.length>2&¶ms.constructor!=Array){params=$.makeArray(arguments).slice(1);}if(params.constructor!=Array){params=[params];}$.each(params,function(i,n){source=source.replace(new
RegExp("\\{"+i+"\\}","g"),n);});return
source;};$.extend($.validator,{defaults:{messages:{},groups:{},rules:{},errorClass:"error",validClass:"valid",errorElement:"label",focusInvalid:true,errorContainer:$([]),errorLabelContainer:$([]),onsubmit:true,ignore:[],ignoreTitle:false,onfocusin:function(element){this.lastActive=element;if(this.settings.focusCleanup&&!this.blockFocusCleanup){this.settings.unhighlight&&this.settings.unhighlight.call(this,element,this.settings.errorClass,this.settings.validClass);this.errorsFor(element).hide();}},onfocusout:function(element){if(!this.checkable(element)&&(element.name
in
this.submitted||!this.optional(element))){this.element(element);}},onkeyup:function(element){if(element.name
in this.submitted||element==this.lastElement){this.element(element);}},onclick:function(element){if(element.name
in this.submitted)this.element(element);else if(element.parentNode.name
in
this.submitted)this.element(element.parentNode);},highlight:function(element,errorClass,validClass){$(element).addClass(errorClass).removeClass(validClass);},unhighlight:function(element,errorClass,validClass){$(element).removeClass(errorClass).addClass(validClass);}},setDefaults:function(settings){$.extend($.validator.defaults,settings);},messages:{required:"This
field is required.",remote:"Please fix this field.",email:"Please enter
a valid email address.",url:"Please enter a valid URL.",date:"Please
enter a valid date.",dateISO:"Please enter a valid date
(ISO).",number:"Please enter a valid number.",digits:"Please enter only
digits.",creditcard:"Please enter a valid credit card
number.",equalTo:"Please enter the same value again.",accept:"Please
enter a value with a valid
extension.",maxlength:$.validator.format("Please enter no more than {0}
characters."),minlength:$.validator.format("Please enter at least {0}
characters."),rangelength:$.validator.format("Please enter a value
between {0} and {1} characters long."),range:$.validator.format("Please
enter a value between {0} and {1}."),max:$.validator.format("Please
enter a value less than or equal to
{0}."),min:$.validator.format("Please enter a value greater than or
equal to
{0}.")},autoCreateRanges:false,prototype:{init:function(){this.labelContainer=$(this.settings.errorLabelContainer);this.errorContext=this.labelContainer.length&&this.labelContainer||$(this.currentForm);this.containers=$(this.settings.errorContainer).add(this.settings.errorLabelContainer);this.submitted={};this.valueCache={};this.pendingRequest=0;this.pending={};this.invalid={};this.reset();var
groups=(this.groups={});$.each(this.settings.groups,function(key,value){$.each(value.split(/\s/),function(index,name){groups[name]=key;});});var
rules=this.settings.rules;$.each(rules,function(key,value){rules[key]=$.validator.normalizeRule(value);});function
delegate(event){var
validator=$.data(this[0].form,"validator"),eventType="on"+event.type.replace(/^validate/,"");validator.settings[eventType]&&validator.settings[eventType].call(validator,this[0]);}$(this.currentForm).validateDelegate(":text,
:password, :file, select, textarea","focusin focusout
keyup",delegate).validateDelegate(":radio, :checkbox, select,
option","click",delegate);if(this.settings.invalidHandler)$(this.currentForm).bind("invalid-form.validate",this.settings.invalidHandler);},form:function(){this.checkForm();$.extend(this.submitted,this.errorMap);this.invalid=$.extend({},this.errorMap);if(!this.valid())$(this.currentForm).triggerHandler("invalid-form",[this]);this.showErrors();return
this.valid();},checkForm:function(){this.prepareForm();for(var
i=0,elements=(this.currentElements=this.elements());elements[i];i++){this.check(elements[i]);}return
this.valid();},element:function(element){element=this.clean(element);this.lastElement=element;this.prepareElement(element);this.currentElements=$(element);var
result=this.check(element);if(result){delete
this.invalid[element.name];}else{this.invalid[element.name]=true;}if(!this.numberOfInvalids()){this.toHide=this.toHide.add(this.containers);}this.showErrors();return
result;},showErrors:function(errors){if(errors){$.extend(this.errorMap,errors);this.errorList=[];for(var
name in
errors){this.errorList.push({message:errors[name],element:this.findByName(name)[0]});}this.successList=$.grep(this.successList,function(element){return!(element.name
in
errors);});}this.settings.showErrors?this.settings.showErrors.call(this,this.errorMap,this.errorList):this.defaultShowErrors();},resetForm:function(){if($.fn.resetForm)$(this.currentForm).resetForm();this.submitted={};this.prepareForm();this.hideErrors();this.elements().removeClass(this.settings.errorClass);},numberOfInvalids:function(){return
this.objectLength(this.invalid);},objectLength:function(obj){var
count=0;for(var i in obj)count++;return
count;},hideErrors:function(){this.addWrapper(this.toHide).hide();},valid:function(){return
this.size()==0;},size:function(){return
this.errorList.length;},focusInvalid:function(){if(this.settings.focusInvalid){try{$(this.findLastActive()||this.errorList.length&&this.errorList[0].element||[]).filter(":visible").focus().trigger("focusin");}catch(e){}}},findLastActive:function(){var
lastActive=this.lastActive;return
lastActive&&$.grep(this.errorList,function(n){return
n.element.name==lastActive.name;}).length==1&&lastActive;},elements:function(){var
validator=this,rulesCache={};return
$([]).add(this.currentForm.elements).filter(":input").not(":submit,
:reset, :image,
[disabled]").not(this.settings.ignore).filter(function(){!this.name&&validator.settings.debug&&window.console&&console.error("%o
has no name assigned",this);if(this.name in
rulesCache||!validator.objectLength($(this).rules()))return
false;rulesCache[this.name]=true;return
true;});},clean:function(selector){return
$(selector)[0];},errors:function(){return
$(this.settings.errorElement+"."+this.settings.errorClass,this.errorContext);},reset:function(){this.successList=[];this.errorList=[];this.errorMap={};this.toShow=$([]);this.toHide=$([]);this.currentElements=$([]);},prepareForm:function(){this.reset();this.toHide=this.errors().add(this.containers);},prepareElement:function(element){this.reset();this.toHide=this.errorsFor(element);},check:function(element){element=this.clean(element);if(this.checkable(element)){element=this.findByName(element.name)[0];}var
rules=$(element).rules();var dependencyMismatch=false;for(method in
rules){var rule={method:method,parameters:rules[method]};try{var
result=$.validator.methods[method].call(this,element.value.replace(/\r/g,""),element,rule.parameters);if(result=="dependency-mismatch"){dependencyMismatch=true;continue;}dependencyMismatch=false;if(result=="pending"){this.toHide=this.toHide.not(this.errorsFor(element));return;}if(!result){this.formatAndAdd(element,rule);return
false;}}catch(e){this.settings.debug&&window.console&&console.log("exception
occured when checking element "+element.id
and Insert is working well if i remove the the regular expression validation from property declaration that is:
<DisplayName("Email ID")><Required(ErrorMessageResourceName:="Err_NameRequired", ErrorMessageResourceType:=GetType(Resources.ScwmCtsRes))>Public Property emailid As StringWaiting for your reply..
Thanks & Regards,
Dhaval
0
Hi Dhaval,
Atanas Korchev
the Telerik team
I am afraid I can't reproduce this error locally. Could you please attach a sample application?
Regards,Atanas Korchev
the Telerik team
Do you want to have your say when we set our development plans?
Do you want to know when a feature you care about is added or when a bug fixed?
Explore the
Telerik Public Issue Tracking
system and vote to affect the priority of the items
0
Dhaval
Top achievements
Rank 2
answered on 26 Oct 2010, 08:17 AM
Hi Atanas,
Here i am providing you with the sample project file, plz check it out. I have used regular expression in phone number and email id both and it is not working and giving me the same error..
Waiting for your reply...
Thanks and Regards,
Dhaval
Here i am providing you with the sample project file, plz check it out. I have used regular expression in phone number and email id both and it is not working and giving me the same error..
Waiting for your reply...
Thanks and Regards,
Dhaval
0
Accepted
Hi Dhaval,
Atanas Korchev
the Telerik team
The problem is that two different versions of jquery.validate.min.js are included. Remove the one included in the master page and the problem would disappear. Or simply include the version from ~/Scripts/2010.2.930.
I am attaching the updated project.
Atanas Korchev
the Telerik team
Do you want to have your say when we set our development plans?
Do you want to know when a feature you care about is added or when a bug fixed?
Explore the
Telerik Public Issue Tracking
system and vote to affect the priority of the items
0
Dhaval
Top achievements
Rank 2
answered on 26 Oct 2010, 09:46 AM
Hi Atanas,
Thanks for your reply.. It was really helpful.
Regards,
Dhaval
Thanks for your reply.. It was really helpful.
Regards,
Dhaval