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

本文详细介绍了在Extjs中如何获取Store和Record的数据。重点指出Records不是数组,获取Record需使用get()方法,而Store和Record的数据通常存在于data属性下。同时,文章通过实例演示了正确获取和赋值Data的方法。

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的区别!)

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值