Extjs中Store和Record的数据获取【精】
首先需要了解一点:
除了Records对象获取Record时,需要用get()方法——因为Records不是一个数组!
其他地方均采用Js的方式,即,属性用obj.id或obj[id]方式
例子:
scoreStore.on("load",function(){ var records = scoreStore.data; for (var i = 0; i < records.length; i++) { 正确! var record = records.get(i);/**只能通过records.get(i)方式获取对应下标的record————因为records并不是数组!!!*/ 错误! var record2 = records[i];//该方式无法获取对应的Record记录,因为中间隔着一个items数组,而records本身不是一个数组 错误! record.xmid = scoreXmid;//这种方式只是给record增加一个xmid属性,并给该属性赋值,并不是我们想要的data里的xmid!!! if (record.get("xmid") == "") { 正确! record.data.xmid = scoreXmid//**这是给fields对应字段赋值的正确方式*/ } if (record.get("id") == "") { 正确! record.data.id = -1;/**这是给fields对应字段赋值的正确方式*/ } //record.get("xmid") = scoreXmid;//record.get("xmid")拿的不是字段名,而是字段值,是把fields中xmid字段的值给拿到了,即:""=4,肯定报错! var data = record.get("xmid");/**此时会发现:data = 4,说明get()获取到的是个属性值!!!*/ } });
1.获取Records:
Score如下:
Records如下:(注意有个items数组的属性,该属性下的data才是我们想要的Record !)
2.获取Record:(注意:得用get方法,这是Extjs的api,因为Records本身不是一个数组!!!)
——正确!
——错误!
——record2获取错误,undifined!
Record如下:(注意其下的xmid属性,和其下的data属性中的xmid属性的区别!!!)
——这是给record中的xmid属性赋值。
——这是给data中的属性赋值,才是我们想要的!!!
3.获取Data:(注:取值时两种方式皆可,取属性名准备赋值,只能用第二种!!!)
——最终获取值。
4.赋值:(注意赋值与取值的区别,get的区别!)
相关推荐
EXTjs4.0 的store的findRecord的BUG:当判断ID=1的时候,遇到1开头的ID的时候,这个时候就判断出问题了,有类似问题的朋友可以了解下哈
可以使用add(Ext.data.Record[] records)或者add(Ext.data.Record record)向store末尾添加一个或多个record。如: 代码如下: var newRecord=new PersonRecord({name:”Tom”,age:22}); store.add(newRecord); add...
实现treegrid组件的(CRUD)读取、新增、修改、删除 ...store.load({node:node}); //异步Ajax提交新增数据 insertdb:function(newrecords) //异步Ajax提交修改数据 updatedb:function(updaterecords)
13.4.3 从store 中获取数据 13.4.4 更新store 中的数据 13.4.5 加载及显示数据 13.5 数据代理 13.5.1 Ext.data.DataProxy 13.5.2 Ext.data.MemoryProxy 13.5.3 Ext.data.HttpProxy 13.5.4 Ext.data....
Extjs的数据模型分为以下几个部分: 数据记录 Record 数据集合中的一个条记录,包括数据的定义和值。相当于实体类。 数据代理 Proxy 用来获取数据的代理。相当于Datasource。 数据解析器 DataReader 负责将Proxy获取...
13.4.3 从store 中获取数据 13.4.4 更新store 中的数据 13.4.5 加载及显示数据 13.5 数据代理 13.5.1 Ext.data.DataProxy 13.5.2 Ext.data.MemoryProxy 13.5.3 Ext.data.HttpProxy 13.5.4 Ext.data....
提供record对象的存储容器 查询、新增、修改、删除等需要重新加载数据时使用 (2)Query+表名:查询方法 (3)List+表名:显示列表方法 (4)Edit+表名:编辑方法 (5)Del+表名:删除方法 (6)Del+表名_fun:删除时触发...
简单的介绍EXTJS,非常适合初学者 内容包含: 1)ExtJS简介 2)获得ExtJS 3)应用ExtJS 4)布局概述 5)ExtJS版的Hello 6)Ext类库简介 7)Border区域布局 8)ExtJS的组件 9)Column列布局 10)组件的使用 11)Fit布局 12)Form...
25、Ext.Ajax类 ………………………… 22 26、Ext.data.Record类 ………………… 23 27、Ext.data.DataProxy类 …………… 24 28、Ext.data.HttpProxy类 …………… 24 29、Ext.data.MemoryProxy类 ……… 25 30、...
3、ExtJs数据篇:主要介绍和数据库交互的相关组件及CRUD功能 4、项目实战篇: Extjs3.2+ASP.NET七层架构+设计模式+ log4j+WebSerice等技术国讯教育通用智能OA办公平台 适用对象 1、要求有一定的javascript语言和...
Ext3.3完整包 Ext3.3中文文档 数据表的结构是:数据表table > 记录record > 字段 store的结构是: Ext.data.Store > Ext.data.Record>Ext.dataDataField store 首先驱动 DataProxy 加载数据 ,DataProxy加载完成会...
Extjs解析xml问题 Ext.onReady(function(){ var store=new Ext.data.Store({ url:'GridData.xml', reader:new Ext.data.XmlReader( {record:'Item'}, ["ASIN","Author","Manufacturer","Product...
方法是异步的,下面的方式获得的reCount始终是0,因为还没等后台的方法执行完就赋值了,此时store的record还没获得值。 var testStore = new Ext.data.GroupingStore({ proxy : new Ext.data.HttpProxy({ url : '...
} //js代码 },{ text: ‘技能分配’, flex: 1, width:150, dataIndex: ‘skillDistribut’, sortable: true, renderer:function(value, metaData, record, rowIndex, columnIndex, store){ metaData.tdAttr= “data...
extjs 左边窗口treepanel 菜单与右边窗口tabpanel 交互 var westPanel = Ext.create('Ext.tree.Panel', { title : '菜单', region : 'west', margins : '0 5 0 0', width : 200, store : store1, ...
[removed][removed] renderer : function(value, metaData, record, rowIndex, colIndex, store) { // provide the logic depending on business rules // name of your own choosing to manipulate the cell /
例如:载入第一页的时候 代码: 代码如下: store.load({params:{start:0,limit:pageSize,Keyword:Ext.getCmp(‘input_name’).getValue()}}); 当单击下一页(上一页)时带参数 代码如下: doLoad : function(start){ ...