[extjs]关于动态修改store中data和fields的问题 extjsjsonstorefields 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 重新创建store不就好了mystore = Ext.create('Ext.data.JsonStore'楼主也太会省分了,20.。结贴返10,相当于10分问个问题。。 版主的的意思是,先定义出myfields和mydata,然后在定义store:var mystore = Ext.create('Ext.data.JsonStore', { fields:myfields, data:mydata});这样吗? 其实我也这么做过, 貌似还是不行,版主看看是不是我myfields创建的有问题啊分的事嘛。。我不知道行情啊。。 Ext.Ajax.request({ url: this.myurl, async: false, params: { argu: this.myargu }, success: function (response) { var json = Ext.JSON.decode(response.responseText); var myfields = []; var mynamefield = [{ name: 'name', type: 'date', dateFormat: 'Y-m-d H:i:s'}]; myfields.push(mynamefield); for (var k in json.datas[0]) { if (k == 'name') continue; else { myfields.push([k]); } } alert(myfields[1]); //mystore.fields = myfields; mystore = Ext.create('Ext.data.JsonStore', { fields: myfields, data: json.datas }); }, var myfields = []; var mydata = []; Ext.Ajax.request({ url: this.myurl, async: false, params: { argu: this.myargu }, success : function(response) { var json = Ext.JSON.decode(response.responseText); mydata = json.datas; var mynamefield = {name: 'name', type: 'date', dateFormat: 'Y-m-d H:i:s'}; myfields.push(mynamefield); for(var k in json.datas[0]){ if(k == 'name') continue; else { myfields.push(k); } } }, failure : function(request) { Ext.MessageBox.show({ title : '操作提示', msg : "连接服务器失败", buttons : Ext.MessageBox.OK, icon : Ext.MessageBox.ERROR }); }, method : 'get' }); alert(myfields[0]['name']); alert(myfields[1]); var mystore = Ext.create('Ext.data.JsonStore', { fields: myfields, /*fields: [ {name: 'name', type: 'date', dateFormat: 'Y-m-d H:i:s'}, 'value' ],*/ }); mystore.loadData(mydata);我2楼说之前我这么做之所以没有成功,是由于var mynamefield = [{ name: 'name', type: 'date', dateFormat: 'Y-m-d H:i:s'}];这一句写错了,我改成var mynamefield = { name: 'name', type: 'date', dateFormat: 'Y-m-d H:i:s'};这样就可以了。 JavaScript支付宝集成 请问,可以实现引用第三方搜索吗? JavaScript在IE8.0老测试出问题 如何使用javascript对网页中的flash进行控制 js怎么获取html标记里包括的内容 固定table中一行的问题 Share一个照片轮转抽奖的小网页 百度地图javascriptAPI如何获取当前屏幕的经纬度范围(注意是javascript,不是安卓) js调用! 关于htc组件和动态javascript的比较与讨论 伸缩效果 jQuery Mobile怎么达成自动检测项目版本,进行升级、安装?
版主的的意思是,先定义出myfields和mydata,然后在定义store:
var mystore = Ext.create('Ext.data.JsonStore', {
fields:myfields,
data:mydata
});
这样吗? 其实我也这么做过, 貌似还是不行,版主看看是不是我myfields创建的有问题啊分的事嘛。。我不知道行情啊。。
url: this.myurl,
async: false,
params: {
argu: this.myargu
},
success: function (response) {
var json = Ext.JSON.decode(response.responseText);
var myfields = [];
var mynamefield = [{ name: 'name', type: 'date', dateFormat: 'Y-m-d H:i:s'}];
myfields.push(mynamefield);
for (var k in json.datas[0]) {
if (k == 'name') continue;
else {
myfields.push([k]);
}
}
alert(myfields[1]);
//mystore.fields = myfields; mystore = Ext.create('Ext.data.JsonStore', { fields: myfields, data: json.datas });
},
var mydata = [];
Ext.Ajax.request({
url: this.myurl,
async: false,
params: {
argu: this.myargu
},
success : function(response) {
var json = Ext.JSON.decode(response.responseText);
mydata = json.datas; var mynamefield = {name: 'name', type: 'date', dateFormat: 'Y-m-d H:i:s'};
myfields.push(mynamefield);
for(var k in json.datas[0]){
if(k == 'name') continue;
else {
myfields.push(k);
}
}
},
failure : function(request) {
Ext.MessageBox.show({
title : '操作提示',
msg : "连接服务器失败",
buttons : Ext.MessageBox.OK,
icon : Ext.MessageBox.ERROR
});
},
method : 'get'
});
alert(myfields[0]['name']);
alert(myfields[1]);
var mystore = Ext.create('Ext.data.JsonStore', {
fields: myfields,
/*fields: [
{name: 'name', type: 'date', dateFormat: 'Y-m-d H:i:s'},
'value'
],*/
});
mystore.loadData(mydata);我2楼说之前我这么做之所以没有成功,是由于
var mynamefield = [{ name: 'name', type: 'date', dateFormat: 'Y-m-d H:i:s'}];
这一句写错了,我改成
var mynamefield = { name: 'name', type: 'date', dateFormat: 'Y-m-d H:i:s'};
这样就可以了。