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学习的更多相关文章

  1. ExtJs Ext.data.Model 学习笔记

    Using a Proxy Ext.define('User', { extend: 'Ext.data.Model', fields: ['id', 'name', 'email'], proxy: ...

  2. ExtJS笔记 Ext.data.Model

    A Model represents some object that your application manages. For example, one might define a Model ...

  3. ExtJS教程(5)---Ext.data.Model之高级应用

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/jaune161/article/details/37391399 1.Model的数据验证 这里借助 ...

  4. HBase 数据模型(Data Model)

    HBase Data Model--HBase 数据模型(翻译) 在HBase中,数据是存储在有行有列的表格中.这是与关系型数据库重复的术语,并不是有用的类比.相反,HBase可以被认为是一个多维度的 ...

  5. EXtJS Ext.data.Model

    (一).首先我们介绍一下Model类中比较常用的几个属性,如果我们想构建一个Model类,最主要的属性就是(Fields)属性,这个属性接受一个数组.用来设置Model中所包含的字段.定义的格式如下: ...

  6. Extjs 项目中常用的小技巧,也许你用得着(5)--设置 Ext.data.Store 传参的请求方式

    1.extjs 给怎么给panel设背景色 设置bodyStyle:'background:#ffc;padding:10px;', var resultsPanel = Ext.create('Ex ...

  7. ExtJS笔记 Ext.data.Types

    This is a static class containing the system-supplied data types which may be given to a Field. Type ...

  8. 设置 Ext.data.Store 传参的请求方式

    设置 Ext.data.Store 传参的请求方式 1.extjs 给怎么给panel设背景色 设置bodyStyle:'background:#ffc;padding:10px;', var res ...

  9. Ext JS 6学习文档-第7章-图表

    Ext JS 6学习文档-第7章-图表 使用图表 本章中将探索在 ExtJS 中使用不同类型的图表并使用一个名为费用分析的示例项目结束本章所学.以下是将要所学的内容: 图表类型 条形图 和 柱形图 图 ...

随机推荐

  1. angular学习笔记(九)-css类和样式3

    再来看一个选择li列表的例子: 点击li中的任意项,被点击的li高亮显示: <!DOCTYPE html> <html ng-app> <head> <tit ...

  2. WPF学习之X名称空间详解

    X名称空间里面的成员(如X:Name,X:Class)都是写给XAML编译器看的.用来引导XAML代码将XAML代码编译为CLR代码. 4.1X名称空间里面到底都有些什么? x名称空间映射的是:htt ...

  3. JAVA-JSP指令元素之page指令

    相关资料:<21天学通Java Web开发> 结果总结:1.page设定JSP页面全局属性,作用于整个JSP页面,包括静态包含的文件2.<%@ page 属性1="属性值1 ...

  4. C语言 · 字符串逆序

    算法训练 字符串逆序   时间限制:1.0s   内存限制:512.0MB      输入一个字符串,长度在100以内,按相反次序输出其中的所有字符. 样例输入 tsinghua 样例输出 auhgn ...

  5. 华为console口配置

    c.单击“Connect”,终端界面会出现如下显示信息,提示用户配置登录密码.设备缺省用户名为admin,密码为Admin@huawei.(以下显示信息仅为示意) user-interface con ...

  6. warning: ignoring option PermSize=256m; support was removed in 8.0

    使用jdk1.8后,控制台出现下面提示信息: Java HotSpot(TM) 64-Bit Server VM warning: ignoring option PermSize=256m; sup ...

  7. golang web开发获取get、post、cookie参数

    在成熟的语言java.python.php要获取这些参数应该来讲都非常简单,过较新的语言golang用获取这些个参数还是费了不少劲,特此记录一下. golang版本:1.3.1在贴代码之前如果能先理解 ...

  8. thinkphp 3.2跟3.1 区别

    1.ThinkPHP3.2 主要整合了3.1以及之前版本的分组问题.3.2之前有普通分组和独立分组,还需要在配置文件中配置.3.2已经不需要配置了,直接使用独立分组就可以了.2.ThinkPHP3.2 ...

  9. 【转】Microsoft .Net Remoting之Marshal、Disconnect与生命周期以及跟踪服务

    Marshal.Disconnect与生命周期以及跟踪服务 一.远程对象的激活 在Remoting中有三种激活方式,一般的实现是通过RemotingServices类的静态方法来完成.工作过程事实上是 ...

  10. C中入栈顺序和运算顺序有关系吗?

    如下代码会怎么执行? printf( "%c,%c,%c\n", getchar(), getchar(), getchar() ); 实际测试,是倒序执行,感觉上符合“C函数的形 ...