[ExtJs] ExtJs4.2 数据模型Ext.data.Model学习
Model代表应用程序管理的一些对象。例如,我们可能会为 我们想在系统中建模的现实世界中的一些物体像使用者、产品和汽车等定义一个Model。这些Model在 Ext.ModelManager中注册,被Ext.data.Store使用, 而这些Ext.data.Store又被许多 Ext中许多与数据绑定的组件使用.
直接上代码:
<%--
Created by IntelliJ IDEA.
User: Administrator
Date: 2015/12/13 0013
Time: 08:51
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head> <jsp:include page="resource.jsp"></jsp:include>
<title>Ext数据模型Ext.data.Model</title>
</head>
<body> <script type="text/javascript">
Ext.onReady(function(){
// Ext.Msg.alert('提示','确定要删除此文件吗?'); Ext.define("MyExt.User",{
extend:"Ext.data.Model",
fields:[
{name: 'name', type: 'string'},
{name: 'age', type: 'int', convert: null},
{name: 'phone', type: 'string'},
{name: 'email', type: 'string'},
{name: 'alive', type: 'boolean', defaultValue: true, convert: null},//默认值
//转换器
{name:'birth',type:'date',convert:function(value,record){ if(Ext.isDate(value)){
return value;
}else if(Ext.isString(value)){
//格式化
return Ext.Date.parse(value,'Y-m-d');
} }}
], validations:[
{ field: 'phone', type: 'length', min: 8, max: 13},
{ field: 'email', type: 'email'}
],
//自定义方法
sayHello:function(msg){ Ext.Msg.alert('提示',msg);
}
}); var user = Ext.create('MyExt.User'); user.sayHello('Ext的数据模型'); //为指定字段重新赋值
user.set('name','小黄');
//获取指定字段的值
console.info(user.get("name")); console.info(user.get('alive'));//true //修改默认字段值的数据
user.set('alive',false);
console.error(user.get('alive'));//false console.info('************数据转换开始**************')
var user_2 = Ext.create('MyExt.User',{
name:'我靠,where is my future?',
birth:'2032-12-12',
phone:'213',
email:'54353.com'
}); console.info(user_2.get('birth')); //Sun Dec 12 2032 00:00:00 GMT+0800 (中国标准时间) /**
* 验证电话 validations
*/ //长度错误
Ext.data.validations.lengthMessage = "长度错误"; Ext.data.validations.emailMessage="邮箱格式错误!"; var validMsg= user_2.validate(); var msgs=[];
if(!validMsg.isValid()){ validMsg.each(function(msg){ msgs.push(msg.field+'字段验证信息:'+msg.message);
}); } Ext.Msg.alert('提示',msgs.join('<br/>'));
});
</script> </body>
</html>
更多请参考:
ExtJS 4.2教程-04:数据模型
[ExtJs] ExtJs4.2 数据模型Ext.data.Model学习的更多相关文章
- ExtJs Ext.data.Model 学习笔记
Using a Proxy Ext.define('User', { extend: 'Ext.data.Model', fields: ['id', 'name', 'email'], proxy: ...
- ExtJS笔记 Ext.data.Model
A Model represents some object that your application manages. For example, one might define a Model ...
- ExtJS教程(5)---Ext.data.Model之高级应用
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/jaune161/article/details/37391399 1.Model的数据验证 这里借助 ...
- HBase 数据模型(Data Model)
HBase Data Model--HBase 数据模型(翻译) 在HBase中,数据是存储在有行有列的表格中.这是与关系型数据库重复的术语,并不是有用的类比.相反,HBase可以被认为是一个多维度的 ...
- EXtJS Ext.data.Model
(一).首先我们介绍一下Model类中比较常用的几个属性,如果我们想构建一个Model类,最主要的属性就是(Fields)属性,这个属性接受一个数组.用来设置Model中所包含的字段.定义的格式如下: ...
- Extjs 项目中常用的小技巧,也许你用得着(5)--设置 Ext.data.Store 传参的请求方式
1.extjs 给怎么给panel设背景色 设置bodyStyle:'background:#ffc;padding:10px;', var resultsPanel = Ext.create('Ex ...
- ExtJS笔记 Ext.data.Types
This is a static class containing the system-supplied data types which may be given to a Field. Type ...
- 设置 Ext.data.Store 传参的请求方式
设置 Ext.data.Store 传参的请求方式 1.extjs 给怎么给panel设背景色 设置bodyStyle:'background:#ffc;padding:10px;', var res ...
- Ext JS 6学习文档-第7章-图表
Ext JS 6学习文档-第7章-图表 使用图表 本章中将探索在 ExtJS 中使用不同类型的图表并使用一个名为费用分析的示例项目结束本章所学.以下是将要所学的内容: 图表类型 条形图 和 柱形图 图 ...
随机推荐
- HTML的级联Select
系统开发中,经常遇到级联Select的状况,而级联的Select Option数据一般记录于DB,如果每次都重新写一套级联Select,工作将是繁琐滴... 一般来说,写一套级联的Select的几个步 ...
- Python 里 and、or 的计算规则
引子: >>> print '' or 5 or 05>>> print 5 and 44>>> print '' or 5 or 0 and 4 ...
- solr进阶九:solr对数字和单个字符的搜索
solr中配有分词器,但分词器里面有大写转换为小写的过滤器时,数字就会被过滤.比如123中国ABC.123就会被过滤掉了,所以才查1|12|123都会失败. <Solr 数字字符不能搜索的一个问 ...
- Linux RPM 命令参数使用详解 查看 rpm包依赖性
转载自:http://blog.csdn.net/deutschester/article/details/6309521 rpm 执行安装包 二进制包(Binary)以及源代码包(Source)两种 ...
- RSA 算法-MSDN文档
RSA 算法 若要生成密钥对,可以从创建名为 p 和 q 的两个大的质数开始. 这两个数相乘,结果称为 n. 因为 p 和 q 都是质数,所以 n 的全部因数为 1. p. q 和 n. 如果仅考虑小 ...
- C++ 递归实现汉诺塔
C++实现汉诺塔 #include <iostream> using namespace std; void move(int n,char x,char y,char z) { ) { ...
- Application.idle方法
Application.Idle()方法表示:当应用程序处于空闲状态时执行相应代码. 示例程序 1.界面设计:一个简单的Lable控件 2.代码 using System; using System. ...
- 篇三:XPath--解析Html
导语:爬虫爬取的界面,大致分为静态界面.ajax异步加载.动态界面.静态界面直接获取HTML对象,然后使用XPath获取值 最有用的路径表达式: 表达式 描述 nodename 选取此节点的所有子节点 ...
- springmvc拦截器的配置、使用
springmvc拦截器的配置.使用:1.自定义拦截器,实现HandlerInterceptor接口. package com.bybo.aca.web.interceptor; import jav ...
- position属性absolute(绝对定位),relatve(相对定位)
position:absolute这个是绝对定位:是相对于浏览器的定位. position:relative这个是相对定位:是居于上一个流体而言