后台json 是 jsonObject 里面有jsonArray 其中一个的名字是你list 的名字 就是前台root的名字 要对应 还有一个就是 totalproterty :是json里面另外一个jsonArray的 名字 是做分页传 记录总数用的
store要根据后台里面存的时候的名字去取 要不取不到
看我的
function NewGridStore(iUrl,iRoot,iTotalProperty,iFields){//获取表store
var store=new ExtdataJsonStore( {
url:iUrl,
root:iRoot,
method:'post',
totalProperty:iTotalProperty,
fields:iFields
});
return store;
}
我这是封装了的 不过你应该能看懂 返回一个store
后台
List list = testserviceQueryByPagingInfoList(start, limit);
try {
JSONObject json = new JSONObject();
JSONArray jsonMembers = new JSONArray();
for (int i = 0; i < listsize(); i++) {
Publicity publicity = (Publicity) listget(i);
JSONObject member = new JSONObject();
memberput("id", publicitygetId());
memberput("danwei", publicitygetDanwei());
memberput("jingbanren", publicitygetJingbanren());
memberput("lianxidianhua", publicitygetLianxidianhua());
memberput("liyou", publicitygetLiyou());
memberput("kaishishijian", publicitygetKaishishijian());
memberput("jieshushijian", publicitygetJieshushijian());
memberput("shuliang", publicitygetShuliang());
memberput("guige", publicitygetGuige());
memberput("neirong", publicitygetNeirong());
memberput("quyu", publicitygetQuyu());
jsonMembersadd(member);
}
jsonput("publicity", jsonMembers);
JSONArray jsonMembers1 = new JSONArray();
jsonMembers1add(count);
jsonput("totalcount", count);
outWriter(json);
function goAllDatas(){
//grid是ExtgirdGridPanel对象
var store = gridgetStore();
var count = storegetCount();
for (var i = 0; i < count; i++) {
var record = storegetAt(i);
//接下来就是取record里面的字段了
//比如取name字段
var name = recorddataname;
//
//接下来就是保存 *** 作
}
}
String json="{name:\"aa\"}";
JSONObject j=JSONObjectfromObject(json);
Systemerrprintln(jget("name"));
这个你参考一下API中的例子 , 很容易就看明白了
grid需要有store , columns
store 负责 获取 , 解析 , 存储数据
columns 是表头
是你自己做的太复杂了。。。写简单点就好了
//构建数据集ExtonReady(function() {
var store=Extcreate('ExtdataStore', {
//这里的字段名称是自定义的,不一定要和后台返回的一一对应,但是数量要相等,否则后面的将不会显示
fields: ['字段1','字段2','字段3'],
//自动加载数据
autoLoad: true,
proxy: {
type: 'ajax',
url: 'xxx',
reader: {
type: 'json',
//这里的root不是一定要设置的,如果返回的本身就是表格数据,就不需要
root: 'items'
}
}
});
//构建表格
Extcreate('ExtgridPanel', {
store:store,
renderTo: ExtgetBody(),
columns: [{
text: '列名',
dataIndex: '对应store的field,而不是json的字段',
},{
//同上
}]
});
});
wpfgrid显示json?有没有办法使用JSON Schema创建WPF UI?我知道可以在AngularJS和其他人的帮助下将其转换为HTML表单。但是寻找一种创建WPF的方法并不富有成效。
存在Source by Rico Suter 关于如何创建Visual Json编辑器。我的要求与此处给出的略有不同。在我的例子中,我想基于模式和模式中提到的属性创建WPF控件。并且,在UI的帮助下,我希望能够通过在UI控件中输入值来创建任意数量的JSON对象。
先定义一个store ,在前端js的grid里将各个字段的名字按照store里的写好就可以了。很简单的
这是一个store:
Extdefine('MyAppstoreXXXX', {extend: 'ExtdataStore',
constructor: function(cfg) {
var me = this;
cfg = cfg || {};
mecallParent([Extapply({
storeId: 'XXXX',
proxy: {
type: 'ajax',
url : '',//这个url是和后台联系的一个关键是一个XXXaction ,需要在struts里配置,假如你是用ss2h的话。
reader : {
type : 'json',
root : 'root',
totalProperty : 'totalProperty'
}
},
fields: [
{
name: 'rentablearea'
}
]
}, cfg)]);
}
});
下面是前台的js
{xtype: 'numbercolumn',
defaultWidth: 40,
dataIndex: 'rentablearea',
text: '',
},
如果你想让grid自动显示的话加上下面一句话
windowAfterRender: function(component, eOpts) {MyAppgetApplication()getStore('')load(); },
以上就是关于初学Extjs,关于gridPanel不显示从Action中接收到的json数据问题全部的内容,包括:初学Extjs,关于gridPanel不显示从Action中接收到的json数据问题、Ext 怎样取出grid中所有记录并保存到数据库呢、后台获取json数据并解析问题等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)