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

easyui datagrid如何动态改变特定单元格的内容(不使用editor)
当执行完deleteRow后,列表会自动执行onLoadSuccess,我不想让列表进行刷新操作,请问如何做到???

还有一个问题,
JScript code

$('#progressTable').datagrid({
            border : false,
            singleSelect : false,
            loadMsg : '请稍候......',
            nowrap : false,
            striped : true,
            collapsible : true,
            url : null,
            idField : 'id',
            remoteSort : false,
            columns : [ [ 
                    {field : 'id',title : '',    width : 10,hidden:true},
             {field : 'resourseName',title : '资源名称',    width : 180},
             {field : 'resourseStatus',title : '资源状态',    width : 80,
                 formatter:function(value,rowData,rowIndex){
                        var div = '<div id="status'+rowData.id+'">'+value+'</div>';    
                        return div;
                             }
                          },
                     {field : 'resourseProgressBar',title : '进度条',    width : 200,formatter:function(value,rowData,rowIndex){
                                                    var div = '<div style="width: 100%;height:40px;float:left;" >'+
                                                            '<div  style="float:left;margin-top:4px;border:0px solid red;width: 205px;height: 20px;background:url(images/ind_progress_bg.png)">'+
                                                                '<div id="progress'+rowData.id+'" style="margin-left:4px;margin-top:3px;background:url(images/ind_progress.png) repeat-x;width:'+ value +';height:14px;"></div>'+
                                                            '</div>'+
                                                        '</div>';
                                                    return div;
                    }},
             {field : 'resourseProgress',title : '进度',    width : 30,formatter:function(value,rowData,rowIndex){
                                       var div = '<div id="percent'+rowData.id+'">'+value+'%</div>';    
                                         return div;
                         }},
                {field : 'resourseDes',title : '描述',    width : 180,formatter:function(value,rowData,rowIndex){
                           var div = '<div id="meg'+rowData.id+'" style="color:red;">'+value+'</div>';    
                         return div;
                }}
                ] ],
            pagination : false,
            rownumbers : false,
            fitColumns:  true,
            onBeforeLoad:function(){
            },
            onLoadSuccess : function() {
                //如何阻止该事件?????????????????
            },
            onSelect : function(rowIndex, rowData) {
                
            },
            onUnselect: function(rowIndex, rowData) {
                
            }
        });


我是通过对应的每个cell的id来改变该cell的内容,比如改变进度那一列的值
$('#percent'+id).html("79%");
当刷新列表后我所改变的值又变成了初始数据,并没有生效(不刷新是可以的),数据又变成了初始化状态的0%,请问还有什么办法可以动态改变datagrid的表格数据(不用editor)???补充:我这个数据是不需要保存到远程数据库的,只是用来显示

------解决方案--------------------
探讨
引用:

我比较少写删除行的代码,没注意看调用deleteRow之后是否有重新加载数据。
你提出这个问题应该就是因为页面刷新会把你改的值给刷成原样了吧?
如果你用js的数组保存了修改后的数据,刷新时直接读取数组的数据不就可以了?这样也不用去改数据库的数据而可以读取到想要的页面数据。

JScript code

formatter:function(value,r……