flex datagrid 增删改的问题
我想用flexdatagrid来显示数据库中的数据,然后用按钮实现增删改,如图所示,选中一条记录,弹出修改窗口,怎么样才能实现在修改窗口编辑完成后,datagrid中的那...
我想用flex datagrid来显示数据库中的数据,然后用按钮实现增删改,如图所示,选中一条记录,弹出修改窗口,怎么样才能实现在修改窗口编辑完成后,datagrid中的那条数据和数据库中的记录都修改呢。
展开
3个回答
展开全部
如果编辑窗口和datagrid编辑的是同一个对象如var objEdit:Object=datagridID.seletedItem,编辑窗口和datagrid实现同步修改是完全没问题的,麻烦一点的当数据库更新成功时才更新datagrid,如果数据库更新失败则报出错误信息,不能更datagrid。,因此可以这样。
//用临时变量储存未修改之前的变量,MyObject是你dataGird显示对象的类型,防止数据库更新失败数据还原
var temp:MyObject=new MyObject();
var objEdit:Object=datagridID.seletedItem
/****将你datagridID.seletedItem的所有字段赋给temp******/
………………………………………………………………
/******************************************************************/
/****调用数据库操作*******************/
………………………………………………………………
//监听到数据库操作的结果,若成功返回就可以了,弹出成功信息
/******************************************************************/
//若数据库操作失败,则将temp的字段的值再重新赋给objEdit
…………………………………………………………
如果你要考虑的更完全一点,你在关闭之前得比较temp和objEdit是否修改了,若修改了则弹出提示是否保存
//用临时变量储存未修改之前的变量,MyObject是你dataGird显示对象的类型,防止数据库更新失败数据还原
var temp:MyObject=new MyObject();
var objEdit:Object=datagridID.seletedItem
/****将你datagridID.seletedItem的所有字段赋给temp******/
………………………………………………………………
/******************************************************************/
/****调用数据库操作*******************/
………………………………………………………………
//监听到数据库操作的结果,若成功返回就可以了,弹出成功信息
/******************************************************************/
//若数据库操作失败,则将temp的字段的值再重新赋给objEdit
…………………………………………………………
如果你要考虑的更完全一点,你在关闭之前得比较temp和objEdit是否修改了,若修改了则弹出提示是否保存
展开全部
这个很简单,调用webservices的方法懂吧.你既然已经显示出来面板了,那就代表你可以操作这条数据,而这条数据是从dataprovider里取出来的,你修改的只是这个集合里的一个元素,至于同时调用后端更新数据库,然后重新查询出来就容易了吧
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2012-09-18
展开全部
调后台接口,可以让后台返回修改后的数据,替换掉原值,也可以重新查询一次所有数据
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询