//两种创建model的方式 Ext.define("person",{ extend:"Ext.data.Model", fields:[ {name:'name',type:'auto'}, {name:'age',type:'int'}, {name:'email',type:'auto'} ] }); Ext.regModel("user",{ fields:[ {name:'name',type:'auto'}, {name:'age',type:'int'}, {name:'email',type:'auto'} ] }); //三种实例化model的方式 //1.new关键字 var p = new person({ name:'uspcat.com', age:26, email:'yunfengcheng2008@126.com' }); //alert(p.get('name')); var p1 = Ext.create("person",{ name:'uspcat.com', age:26, email:'yunfengcheng2008@126.com' }); //alert(p1.get('age')); var p2 = Ext.ModelMgr.create({ name:'uspcat.com', age:26, email:'yunfengcheng2008@126.com' },'person'); //alert(p2.get('email')); //alert(p2.getName());//? class object.getClass.getName alert(person.getName());
数据验证的方法
//设置全局错误信息 Ext.data.validations.lengthMessage = "错误的长度"; //定义验证方式 Ext.define("person",{ extend:"Ext.data.Model", fields:[ {name:'name',type:'auto'}, {name:'age',type:'int'}, {name:'email',type:'auto'} ], validations:[ {type:"length",field:"name",min:2,max:6}, {type:'age',field:"age",min:0,max:150} ] }); var p1 = Ext.create("person",{ name:'uspcat.com', age:-26, email:'yunfengcheng2008@126.com' }); var errors = p1.validate(); //调用验证方法 var errorInfo = []; errors.each(function(v){ errorInfo.push(v.field+" "+v.message); //获取验证错误信息 }); alert(errorInfo.join("\n")); //自定义验证方法 Ext.apply(Ext.data.validations,{ age:function(config, value){ var min = config.min; var max = config.max; if(min <= value && value<=max){ return true; }else{ this.ageMessage = this.ageMessage+"他的范围应该是["+min+"~"+max+"]"; return false; } }, ageMessage:'数据出现的了错误' }); //我觉得还可以有更好的方法 Ext.apply(Ext.data.validations,{ myValidate:function(config, value){ var validateFun = config.validateFun; return validateFun.call(value,config); }, myValidateMessage:'数据出现的了错误' }); Ext.define("person",{ extend:"Ext.data.Model", fields:[ {name:'name',type:'auto'}, {name:'age',type:'int'}, {name:'email',type:'auto'} ], validations:[ {type:"length",field:"name",min:2,max:6}, {type:'age',field:"myValidate",validateFun:function(v){ return v > 10 && v < 100; }}); var p1 = Ext.create("person",{ name:'uspcat.com', age:-26, email:'yunfengcheng2008@126.com' }); var errors = p1.validate(); //调用验证方法 var errorInfo = []; errors.each(function(v){ errorInfo.push(v.field+" "+v.message); //获取验证错误信息 }); alert(errorInfo.join("\n"));
proxy 代理
(function(){ Ext.onReady(function(){ Ext.define("person",{ extend:"Ext.data.Model", fields:[ {name:'name',type:'auto'}, {name:'age',type:'int'}, {name:'email',type:'auto'} ], proxy:{ type:'ajax', url:'person.jsp' } }); var p = Ext.ModelManager.getModel("person"); //加载数据 p.load(1, { //1 默认是传递给后台的参数 参数名称为id scope: this, failure: function(record, operation) { }, success: function(record, operation) { alert(record.data.name) }, callback: function(record, operation) { } }); }) })();
相关推荐
ruby初学笔记ruby初学笔记ruby初学笔记ruby初学笔记ruby初学笔记
nodejs初学笔记大全
java实用初学笔记 要点很详细 希望对大家有用
nodejs初学笔记Markdown大全
Ajax初学笔记 ============ Ajax 自学 初学笔记 对入门非常有帮助
非常好的java笔记适合初学者,培训班老师上课给的笔记,非常细致全面,适合初学者
初学STM32处理器必备的笔记,精心整理。快速入门
JSP 初学者 笔记 示例代码JSP 初学者 笔记 示例代码JSP 初学者 笔记 示例代码JSP 初学者 笔记 示例代码JSP 初学者 笔记 示例代码
适合初学springMVC框架的萌新
android笔记初学者必看 包含代码和知识要点 为求职做好充分准备
学习天池训练营mysql后根据里面做的初学笔记
Visual Basic 编程初学者笔记Visual Basic 编程初学者笔记Visual Basic 编程初学者笔记
初学vue可看,部分笔记分享
学习qt时遇到的一些小问题搜集的解决方法,有需要的可以看看
python初学者笔记
Web前端HTML5 CSS3初学者零基础入门全套学习笔记 Web前端HTML5 CSS3初学者零基础入门全套学习笔记 Web前端HTML5 CSS3初学者零基础入门全套学习笔记 Web前端HTML5 CSS3初学者零基础入门...
个人初学SSH时整理的笔记,绝对简明易懂,详细。。。附带主要完整代码 绝对物超所值
初学者的open stack的笔记, 是一个月的结果。
一个arm9初学者的经验,可以让想学arm的人少走点弯路
Oracle初学者笔记,和适合入门参考。简单易懂。