先来了解Ext Js和SQL的不用语法:
1:Ext Js语法
var EmployeeRecord = new Ext.data.Record.create({
{name: 'empId ', type: 'int'}
{name: 'first', type: 'string'},
{name: 'name', type': 'string'},
{name: 'age', type: 'int'},
{name: 'email', type: 'string'}
});
2: SQL语法
create table EmployeeRecord {
empId number(8),
first varchar2(20),
name varchar2(20),
age number(8),
email varchar2(20)
}
从上面的情况下,Ext.data.Record其实就相当于表中的一行数据,而create方法中定义了字段的类型就相当于表中的列,type就是表中的列类型。
可以通过下面两种方式来创建一行数据,而且可以对每行数据进行赋值
(1)直接创建方式
var empRecord = new EmployeeRecord({
first: 'first1',
name: '张三',
age: '20',
email: '[email protected]'
});
(2) 通过set方式创建
var myRecord = new EmployeeRecord ();
myRecord .set("first", "first1");
myRecord .set("name", "张三");
myRecord .set("age", "20");
myRecord .set("email", [email protected]);
上述两个例子使用了不同的方法进行存储数据,下面使用两种不同的方法读取数据:
employeeRecord.getField('first');
employeeRecord.getField('name');
employeeRecord.getField('age');
employeeRecord.getField('email);
myRecord.get('first');
myRecord.get('name');
myRecord.get('age');
myRecord.get('email');
3:Record属性
名称 |
类型 |
描述 |
dirty |
Boolean |
记录数据是否修改过 |
editing |
Boolean |
记录数据是否正在编辑状态 |
modified |
Object |
存储了一个数据字段名称和值的集合,用来保存之前修改过的字段名称和值 |
Ext.Data.Record是一个设定了内部数据类型的对象,它是Ext.data.Store的最基本组成部分。
myRecord .set("first", "first1");
在代码中,set方法会自动判断属性的值是否改变,如果改变,就将当前对象的dirty属性设置为ture,并将修改之前的原始数据保存到modified对象中,如果直接
使用data中的数据,那么Record就无法记录数据是否修改了。
当Record中的属性值被修改后,它将会执行以下几个方法: