EXTJS系列笔记————grid新增和修改数据与后台的快速交互
2018-03-06 14:16
471 查看
1、拿取grid的store
var store = obj.up("form").nextSibling("gridpanel").getStore();
2、拿取新增记录和修改记录
var addRecords = store.getNewRecords();
var updateRecords = store.getUpdateRecords();
3、将记录变成数组形式
var addRecordArr=new Array();
//新添加的数据
for(var i=0;i<addRecords.length;i++){
ddRecordArr.push(addRecords[i].getData());
}
var updateRecordArr=new Array();
//修改的数据
for(var i=0;i<updateRecords.length;i++){
updateRecordArr.push(updateRecords[i].getData());
}
4、将数组转化为json字符串
var newJsonStr=Ext.encode(addRecordArr);
var updateJsonStr=Ext.encode(updateRecordArr);
5、然后将上述字符ajax请求发送到后台
Ext.Ajax.request({
url:"test/test.do",
params:{
newJsonStr:newJsonStr,
updateJsonStr:updateJsonStr
},
method:"post",
dataType:"text",
success:function(data){
alert(data.responseText);
store.load();
}
});
6、后台接收json字符串以后,将其转换为List.
List<ProBasePage> newList = GsonUtil.parseJsonArrayWithGson(newJsonStr, ProBasePage.class);
7、GsonUtil的代码
// 将Json数据解析成相应的映射对象
public static <T> T parseJsonWithGson(String jsonData, Class<T> type) {
Gson gson = new Gson();
T result = gson.fromJson(jsonData, type);
return result;
}
// 将Json数组解析成相应的映射对象列表
public static <T> List<T> parseJsonArrayWithGson(String json,
Class<T> clazz) {
Type type = new TypeToken<ArrayList<JsonObject>>(){}.getType();
ArrayList<JsonObject> jsonObjects = new Gson().fromJson(json, type);
ArrayList<T> arrayList = new ArrayList<T>();
for (JsonObject jsonObject : jsonObjects)
{
arrayList.add(new Gson().fromJson(jsonObject, clazz));
}
return arrayList;
}
以上就是简单的前后台数据交互,个人人为这种方式挺简单的,同时区分了新增数据和修改数据。如果有更好的方法,请留言赐教。
var store = obj.up("form").nextSibling("gridpanel").getStore();
2、拿取新增记录和修改记录
var addRecords = store.getNewRecords();
var updateRecords = store.getUpdateRecords();
3、将记录变成数组形式
var addRecordArr=new Array();
//新添加的数据
for(var i=0;i<addRecords.length;i++){
ddRecordArr.push(addRecords[i].getData());
}
var updateRecordArr=new Array();
//修改的数据
for(var i=0;i<updateRecords.length;i++){
updateRecordArr.push(updateRecords[i].getData());
}
4、将数组转化为json字符串
var newJsonStr=Ext.encode(addRecordArr);
var updateJsonStr=Ext.encode(updateRecordArr);
5、然后将上述字符ajax请求发送到后台
Ext.Ajax.request({
url:"test/test.do",
params:{
newJsonStr:newJsonStr,
updateJsonStr:updateJsonStr
},
method:"post",
dataType:"text",
success:function(data){
alert(data.responseText);
store.load();
}
});
6、后台接收json字符串以后,将其转换为List.
List<ProBasePage> newList = GsonUtil.parseJsonArrayWithGson(newJsonStr, ProBasePage.class);
7、GsonUtil的代码
// 将Json数据解析成相应的映射对象
public static <T> T parseJsonWithGson(String jsonData, Class<T> type) {
Gson gson = new Gson();
T result = gson.fromJson(jsonData, type);
return result;
}
// 将Json数组解析成相应的映射对象列表
public static <T> List<T> parseJsonArrayWithGson(String json,
Class<T> clazz) {
Type type = new TypeToken<ArrayList<JsonObject>>(){}.getType();
ArrayList<JsonObject> jsonObjects = new Gson().fromJson(json, type);
ArrayList<T> arrayList = new ArrayList<T>();
for (JsonObject jsonObject : jsonObjects)
{
arrayList.add(new Gson().fromJson(jsonObject, clazz));
}
return arrayList;
}
以上就是简单的前后台数据交互,个人人为这种方式挺简单的,同时区分了新增数据和修改数据。如果有更好的方法,请留言赐教。
相关文章推荐
- EXTJS系列笔记————点击grid中的数据,显示在form中
- ExtjsGrid 分页、ASP.net前后台数据交互
- [新手入门]快速学习 ADO.NET Entity Framework系列文章 #4 -- 数据新增、删除、修改(ObkectContext的 .SaveChange()方法)
- EXTJS4.0 用法笔记~~ 3种和后台交互数据的方法(小弟只会这三种。。。)
- Extjs分页数据与后台交互
- Extjs学习总结之11前端与后台的数据交互ajax
- extjs中form与grid交互数据(record)的方法
- extjs textField之后添加一个button以及后台数据交互
- MP实战系列(十三)之批量修改操作(前后台异步交互)
- 新增格式化单元格数据功能-dotNetFlexGrid更新1.24版本,快速的设置您的表格数据的不同样式;现在开始扔掉你的Asp.net GridView吧。
- Extjs客户端数据,Grid展示,弹出窗体修改,并将修改数据再次显示在Grid【未完全验证】
- 【ExtJs】与后台数据库交互的带分页表格组件grid的查询
- ExtJs 和后台数据的交互方式
- extjs itemselector 使用详解,前台显示及后台数据交互
- Extjs 4.2 Grid增删改及后台交互(Java)
- Zp的Ext学习笔记(一)——坑爹的MVC(html中Extjs配置、proxy代理的前后台交互、json解析、后台处理传入json乱码)
- 急求 extjs grid filter 与后台交互(框架ssi2)
- Extjs学习------MVC结构的开发(从后台获取数据显示到Grid)
- extjs中form与grid交互数据(record)的方法
- 在写extjs中一个panel里放了3个grid,但就是不显示页面,后台给出数据,前台也有加载数据