`

Extjs中Store和Record的数据获取【精】

阅读更多

Extjs中Store和Record的数据获取【精】

 

首先需要了解一点:

除了Records对象获取Record时,需要用get()方法——因为Records不是一个数组!

其他地方均采用Js的方式,即,属性obj.idobj[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的区别!)

 

 

  • 大小: 527 Bytes
  • 大小: 1.1 KB
  • 大小: 11.6 KB
  • 大小: 16.1 KB
  • 大小: 8.7 KB
  • 大小: 1.4 KB
  • 大小: 1.7 KB
  • 大小: 1.3 KB
  • 大小: 2.1 KB
  • 大小: 1 KB
  • 大小: 1.2 KB
  • 大小: 758 Bytes
  • 大小: 2.7 KB
分享到:
评论

相关推荐

    EXTjs4.0的store的findRecord的BUG演示代码

    EXTjs4.0 的store的findRecord的BUG:当判断ID=1的时候,遇到1开头的ID的时候,这个时候就判断出问题了,有类似问题的朋友可以了解下哈

    ExtJS Store的数据访问与更新问题

    可以使用add(Ext.data.Record[] records)或者add(Ext.data.Record record)向store末尾添加一个或多个record。如: 代码如下: var newRecord=new PersonRecord({name:”Tom”,age:22}); store.add(newRecord); add...

    ExtJs4.1 treegrid CRUD 读取、新增、修改、删除

    实现treegrid组件的(CRUD)读取、新增、修改、删除 ...store.load({node:node}); //异步Ajax提交新增数据 insertdb:function(newrecords) //异步Ajax提交修改数据 updatedb:function(updaterecords)

    精通JS脚本之ExtJS框架.part2.rar

    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学习笔记之九 数据模型(上)

    Extjs的数据模型分为以下几个部分: 数据记录 Record 数据集合中的一个条记录,包括数据的定义和值。相当于实体类。 数据代理 Proxy 用来获取数据的代理。相当于Datasource。 数据解析器 DataReader 负责将Proxy获取...

    精通JS脚本之ExtJS框架.part1.rar

    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....

    Vs2005+Access+Extjs三层架构源码

    提供record对象的存储容器 查询、新增、修改、删除等需要重新加载数据时使用 (2)Query+表名:查询方法 (3)List+表名:显示列表方法 (4)Edit+表名:编辑方法 (5)Del+表名:删除方法 (6)Del+表名_fun:删除时触发...

    ExtJS 2.0实用简明教程

    简单的介绍EXTJS,非常适合初学者 内容包含: 1)ExtJS简介 2)获得ExtJS 3)应用ExtJS 4)布局概述 5)ExtJS版的Hello 6)Ext类库简介 7)Border区域布局 8)ExtJS的组件 9)Column列布局 10)组件的使用 11)Fit布局 12)Form...

    ExtJS入门教程(超级详细)

    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、...

    log4Net详解(共2讲)

    3、ExtJs数据篇:主要介绍和数据库交互的相关组件及CRUD功能 4、项目实战篇: Extjs3.2+ASP.NET七层架构+设计模式+ log4j+WebSerice等技术国讯教育通用智能OA办公平台 适用对象 1、要求有一定的javascript语言和...

    ExtJs 实现动态加载grid完整示例

    Ext3.3完整包 Ext3.3中文文档 数据表的结构是:数据表table &gt; 记录record &gt; 字段 store的结构是: Ext.data.Store &gt; Ext.data.Record&gt;Ext.dataDataField store 首先驱动 DataProxy 加载数据 ,DataProxy加载完成会...

    ext js解析xml文档

    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...

    ExtJs异步无法向外传值和赋值的完美解决办法

    方法是异步的,下面的方式获得的reCount始终是0,因为还没等后台的方法执行完就赋值了,此时store的record还没获得值。 var testStore = new Ext.data.GroupingStore({ proxy : new Ext.data.HttpProxy({ url : '...

    extjs4 treepanel动态改变行高度示例

    } //js代码 },{ text: ‘技能分配’, flex: 1, width:150, dataIndex: ‘skillDistribut’, sortable: true, renderer:function(value, metaData, record, rowIndex, columnIndex, store){ metaData.tdAttr= “data...

    tree with tab

    extjs 左边窗口treepanel 菜单与右边窗口tabpanel 交互 var westPanel = Ext.create('Ext.tree.Panel', { title : '菜单', region : 'west', margins : '0 5 0 0', width : 200, store : store1, ...

    extjs 如何给column 加上提示

    [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 /

    ExtJS 工具栏 分页事件参数

    例如:载入第一页的时候 代码: 代码如下: store.load({params:{start:0,limit:pageSize,Keyword:Ext.getCmp(‘input_name’).getValue()}}); 当单击下一页(上一页)时带参数 代码如下: doLoad : function(start){ ...

Global site tag (gtag.js) - Google Analytics