EasyUI Forum

General Category => EasyUI for jQuery => Topic started by: Stefan B. on January 12, 2015, 02:55:56 AM



Title: How can I set a validType for a datebox
Post by: Stefan B. on January 12, 2015, 02:55:56 AM
Is there a validate type or an rule to validate datebox manual entrys?
How can I write a default rule for an datebox to check the date format?


Title: Re: How can I set a validType for a datebox
Post by: jarry on January 12, 2015, 03:40:00 AM
Please extend a validate type and apply it to the datebox component.
Code:
<script>
$.extend($.fn.validatebox.defaults.rules, {
date: {
validator: function(value, param){
var ss = value.split('/');
var m = parseInt(ss[0],10);
var d = parseInt(ss[1],10);
var y = parseInt(ss[2],10);
return !isNaN(m) && !isNaN(d) && !isNaN(y);
},
message: 'The date value is invalid.'
}
})
</script>
<input class="easyui-datebox" validType="date">


Title: Re: How can I set a validType for a datebox
Post by: Stefan B. on January 12, 2015, 04:53:42 AM
THX - this works. But for German date format i use now this code:
Code:
defaultDateFormat: { 
validator: function(value, param){
 //consoleDebug(value);
 var re = /^\d{1,2}\.\d{1,2}\.\d{4}$/;
 if( re.test(value)){
  var adata = value.split('.');
        var dd = parseInt(adata[0],10);
     var mm = parseInt(adata[1],10);
     var yyyy = parseInt(adata[2],10);
     var xdata = new Date(yyyy,mm-1,dd);
     if ( ( xdata.getFullYear() == yyyy ) && ( xdata.getMonth () == mm - 1 ) && ( xdata.getDate() == dd ) )
     return true;
     else
     return false;
     }
     return false;        
  }
}
}

This code always checked dates like the "30. February" or other not valid dates.
I found that exsample on this site: http://snipplr.com/view/58062/