winclasswangquan 2012-04-06 18:50
浏览 330
已采纳

Ext store里的记录如何修改?

最近有个需求,grid表格可以行拖拽,拖拽以后要修改store中的记录,并保存到数据库。拖拽没有问题但是总是无法修改store中的记录。请问如何解决?

代码片段如下 注:代码是可以运行的 。这里只是片段,我的问题是 为何修改了store,但是已修改集合的长度确实0?

[code="java"]
initRowDragDrop:function(){
var store=this.store;
var drapDrop=new Ext.dd.DropTarget(grid.container, {
ddGroup : 'GridDD',
copy : false,
notifyDrop : function(dd, e, data) {
//拖拽代码开始 拖拽部分没有问题
// 选中了多少行
var rows = data.selections;
// 拖动到第几行
var index = dd.getDragData(e).rowIndex;
if (typeof(index) == "undefined") {
return;
}

                        var rowData = rows[0];

                        if (!this.copy) store.remove(rowData);

                        store.insert(index, rowData);
                        //拖拽结束  

                        //开始修改store   
                        for(var i=0;i<store.getCount;i++)  {
                             //修改记录中的字段值
                            store.getAt(i).set("priority",i);
                            //提交修改
                            store.commitChanges();
                        }

                        //获取有更改的记录集合
                        var modifyed=store.getModifiedRecords();

                      //[b]打印集合长度  问题? 总是0 说明没有做任何更改。  这是怎么回事 ?[/b]                            

                       alert(modifyed.length);


                  }
              });

}
[/code]

  • 写回答

1条回答 默认 最新

  • -量- 2012-04-07 22:01
    关注

    API上的话:
    getModifiedRecords() : Ext.data.Record[]
    获得最后一次提交之后被修改的记录...

    store.commitChanges(); 所以。。。它如何能不是0

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 #MATLAB仿真#车辆换道路径规划
  • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建
  • ¥15 数据可视化Python
  • ¥15 要给毕业设计添加扫码登录的功能!!有偿
  • ¥15 kafka 分区副本增加会导致消息丢失或者不可用吗?
  • ¥15 微信公众号自制会员卡没有收款渠道啊
  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘