Ext动态加载多个对象数据

Ext动态加载多个对象数据

问题描述:

小弟刚刚接触Ext,遇到一个问题,希望各位有经验的大虾能帮忙解决一下!小弟非常感谢

首先我实现的是一个查看详情的功能!!!!
前台,我通过一个查询按钮,进行请求后台获取到
一个json对象(一个家庭详细信息(包括:家庭基本信息数据,以及2个外键表,一个是成员,一个是家庭经营项目))

返回结果:
{
success:true,
data:{
id:'familyId',
name:'familyName',
arList:[{id:'arId1',name:'arName1'},{id:'arId2',name:'arName2'}],
rsList:[{id:'rsId1',name:'rsName1'},{id:'rsId2',name:'rsName2'}]
}
}

在使用Ajax.request成功请求后:
success : function(resp, options) {
/*这里我想将data下面的id,name赋值给ep_form*/
/*这里我想将data下面的arList赋值到ar_store*/
/*这里我想将data下面的rsList赋值给rs_store*/
win_addEp.show();
}

上面3行代码,我想了好久也不知道如何实现!!!!
试过:Ext.decode(resp.responseText).data来获取data
Ext.decode(resp.responseText).data.rsList来获取data下面的rsList
查过store的API loadData之类的,始终不得其法!
似乎我有那些方面不太了解!!希望有高手能指点1 2,小弟不胜感激!!!

[code="java"]
store : new Ext.data.Store({
proxy : new Ext.data.HttpProxy({
url : 'admin/userListForWin.html'
}),
reader : new Ext.data.JsonReader({
totalProperty : 'total',
successProperty : 'success',
root : 'root',
fields : ["id", "username", 'code', "xingMing", "department",
{name: 'jobTitle', mapping: 'jobTitle',type: 'string', convert: function(v){if(v&&v.value){return v.value;}else{return "";}}}]
}),
remoteSort : false,
autoLoad : false
}),
[/code]

你将相应字符串转换成json对象时正确的,你的这种实现方式也没有错,只不过每个store中的数据格式都是规定好了的,store中的每一条记录都是一个record对象,record对象的格式需要定义好,如上面代码中的fields中的定义,你的store中要成功加载rsList 的数据,需要看看reader中fields设置的数据格式是否正确。
可以贴出代码来看看吗?

试过:Ext.decode(resp.responseText).data来获取data
Ext.decode(resp.responseText).data.rsList来获取data下面的rsList
查过store的API loadData之类的,始终不得其法!

Ext.decode(resp.responseText).data来获取data
这句话获取了后台传递传来的数据,然后就是取JSON数据了,
id:data.id
name:data.name
ar_store:如果用的是EXT里面的STORE,就是简单用下MEMORY_STORE;如果不是,就是简单的赋值啊,如:
var ar_store=new Array();
for(var i=0;i<data.arList.length;i++){//没有判断一些条件
var object={};
object=data.arList[i];
}
这样不就可以了吗?