ExtJs之ExtJs.Model验证

简介:

没有搞好,但知道意思和配置,并且好像4和3的没有兼容性语法,所以网上找了新语法才出来了点东东。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
<! DOCTYPE html>
< html >
< head >
     < title >ExtJs</ title >
         < meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
     < link rel="stylesheet" type="text/css" href="ExtJs/packages/ext-theme-crisp/build/resources/ext-theme-crisp-all.css">
         < script type="text/javascript" src="ExtJs/ext-all.js"></ script >
         < script type="text/javascript" src="ExtJs/bootstrap.js"></ script >
         < script type="text/javascript" src="ExtJs/packages/ext-theme-crisp/build/ext-theme-crisp.js"></ script >
 
     < script type="text/javascript">
             Ext.onReady(function(){
         //Ext.regModel('ProductInfo', {
         //  fields: ['productName', 'productNum', 'productPrice']
         //});
         /*
         Ext.data.validations.presenceMessage = '必须是有效值';
         Ext.data.validations.lengthMessage = '长度错误';
         Ext.data.validations.formatMessage = '格式错误';
 
         Ext.apply(Ext.data.validations, {
           number: function(config, value){
             if(value === undefined){
               return false;
             }
             var min = config.min,
                 max = config.max;
             if((min && value < min ) || (max && value > max)) {
               return false;
             }else {
               return true;
             }
           },
           numberMessage: '数据范围错误'
         })
         */
         Ext.define('Ext.data.validator.Number', {
           extend: 'Ext.data.validator.validator',
           alias: 'data.validator.number',
           type: 'number',
           config: {
             min: 160
           },
           validate: function(value){
             console.log(value);
             var result = Ext.isNumber(value);
             if(result){
               result = value > 0 && value < this.getMax ();
             }
             return result ? result : this.getMessage();
           }
         });
 
         Ext.define('User', {
             extend: 'Ext.data.Model',
             fields: [
               {name: 'name', type: 'string'},
               {name: 'age', type: 'int'},
               {name: 'phone', type: 'string'}
             ],
             validators: {
               age: 'presence',
               //age: {type: 'number', min: 30},
               name: {type: 'length', min: 5}
             }
         });
 
         var user = Ext.create('User', {
           name: 'tom',
           age: 24,
           phone: '555-666-6666'
         });
         var errors = user.getValidation();
         /*
         var message = [];
         errors.each(function(v){
           message.push(v.field + ': ' + v.message)
         });
 
         alert(message.join('\n'));
         */
         alert(errors);
         alert(user.get('name'));
 
 
       });
     </script>
</ head >
< body >
< div id='tpl-table1'></ div >
< br >
< div id='tpl-table2'></ div >
</ body >
</ html >
目录
相关文章
|
JSON JavaScript 数据格式