日期:2014-05-16  浏览次数:20366 次

extjs如何将record转换成json
JScript code
var categoryJSON = [];
                    for(var i = 0; i < records.length; i++){
                        record = Ext.encode(records[i].get('categoryName'));
                        categoryJSON.push(record);
                    }

子啊服务器得到的是["xx","xx"],这哪是json格式啊

------解决方案--------------------
json格式类似这样{data:[{key1:value1,key2:value2},{key1:value11,key2:value22}]}

var categoryJSON = [];
for(var i = 0; i < records.length; i++){
record = Ext.encode(records[i].get('categoryName'));//这里的record得到的只是一个字符串
categoryJSON.push(record);//categoryJSON就变成字符串数组了。
}

要是您有耐心,可以将record变成一个对象,将您想要传给后台的字段都放进里面
recordObj = {
categoryName:value1,
categoryId:value2,
}

然后将recordObj放进一个数据里
recordObjArr = [];
recordObjArr.push(recordObj);

然后将recordObjArr放进传给后台的字段categoryJSON(这个必须是对象)
var categoryJSON = {};
categoryJSON.data = recordObjArr

这样后台接收数据就是json字符串了