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

在extjs 的editgrid 修改数据保存到数据库中的方法
定义一个读取xml数据类型的store
var store = new Ext.data.Store({
url : 'http://localhost:8888/web_test/servlet/test2',
reader : new Ext.data.XmlReader({
record : 'student',// 取得一条记录的起始标签
totalRecords : '@total'
}, ["name", "age", "id"
])
});
/////////////////////////////////////////////////////////////
在editgridPanel中的代码
var grid = new Ext.grid.EditorGridPanel({
renderTo : document.body,
title : "Student",
store : store,
frame : true,
clicksToEdit : 1,
// columns:[{id:"name",header:"id",dataIndex:"id",sortable:true
// },
// {header:"name",dataIndex:"name",sortable:true },
// {header:"age",dataIndex:"age",sortable:true }
// ],
columns : [{
id : "id",
header : "id",
dataIndex : "id",
sortable : true,
editor : new Ext.form.TextField()
}, {
header : "name",
dataIndex : "name",
editor : new Ext.form.TextField()
}, {
header : "age",
dataIndex : "age",
editor : new Ext.form.TextField()
}],
width : 500,
height : 500,
// tbar:tb,
listeners:{
afteredit:function(e){
var conn=new Ext.data.Connection();
alert(e.record.id);
conn.request({
url:'http://localhost:8888/web_test/servlet/test2',
params:{
action:'update',
id:e.record.id,
field:e.field,
value:e.value

},
success:function(resp,opt){
e.commit();
Ext.Msg.alert("修改数据已保存");
},
failure:function(resp,opt){
Ext.Msg.alert("数据提交失败 ");

}


})


}

}

});


});
///////////////////////////////////////////
在listeners里面的afteredit监听事件中写了修改数据回传到xml数据源中,然后通过数据源保存.
经过验证,修改后的数据已经传入afteredit的处理函数中,可就是不能保存到数据库中去
extjs xml 数据库 editgrid