Extjs中的store数据进行json序列化

当Extjs前台需要进行将store中的数据,转成json字符串,以便传给后台处理

有以下2种方式去进行store转json

var jsonData = Ext.encode(Ext.pluck(store.data.items, 'data')); 
第2种:

var datar = new Array();  
var jsonDataEncode = "";  
var records = store.getRange();  
for (var i = 0; i < records.length; i++) {  
    datar.push(records[i].data);  
}  
jsonDataEncode = Ext.util.JSON.encode(datar);  
转换成json字符串后,可以利用ajax发起请求,使用方式如下:

                    Ext.Ajax.request({
                        url: my.url + '/edu/Test/TestScore',
                        method: 'POST',
                        submitEmptyText: false,
                        jsonData: Ext.encode(Ext.pluck(me.memberGridStore.data.items, 'data')),
                        success: function(response) {
                            Ext.Msg.show({
                                icon: Ext.MessageBox.INFO,
                                title: '提示信息',
                                buttons: Ext.MessageBox.OK,
                                msg: "首次录入成绩成功"
                            });

                            if (win.afterSuccess) {
                                win.afterSuccess();
                            }

                            win.close();

                        },
                        failure: function(response) {
                            var result = Ext
                                .decode(response.responseText);
                            Ext.Msg.show({
                                icon: Ext.MessageBox.ERROR,
                                title: '提示消息',
                                buttons: Ext.MessageBox.OK,
                                msg: result.errMsg
                            });
                        }
                    });
后台可以使用springMVC进行处理请求,实例如下

    @RequestMapping(value = "TestScore", method = RequestMethod.POST)
    public @ResponseBody void recordScore(HttpServletRequest request, HttpServletResponse response,
            @RequestBody List testMemberList) {
        testService.recordScore(testMemberList);
    }

你可能感兴趣的:(Extjs中的store数据进行json序列化)