网上好多的例子,但是自己使用的情况下还是出现bug。比如以下代码:
var myview = $.extend({}, $.fn.datagrid.defaults.view, { renderFooter: function(target, container, frozen){ var opts = $.data(target, 'datagrid').options; var rows = $.data(target, 'datagrid').footer || []; var fields = $(target).datagrid('getColumnFields', frozen); var table = ['<table class="datagrid-ftable" cellspacing="0" cellpadding="0" border="0"><tbody>']; for(var i=0; i<rows.length; i++){ var styleValue = opts.rowStyler ? opts.rowStyler.call(target, i, rows[i]) : ''; var style = styleValue ? 'style="' + styleValue + '"' : ''; table.push('<tr class="datagrid-row" datagrid-row-index="' + i + '"' + style + '>'); table.push(this.renderRow.call(this, target, fields, frozen, i, rows[i])); table.push('</tr>'); } table.push('</tbody></table>'); $(container).html(table.join('')); } }); $('#list').datagrid({ view:myview }); <table id = "list" class="easyui-datagrid" title="投资情况统计表" style="width:960;"fixRowHeight="true" data-options="rownumbers:false,singleSelect:true,url:'<%=webRoot %>/hqswq/report/tzqkInfo.do?nf=<%=nf %>',method:'get',showFooter: true,rowStyler: function(index,row){ if (row.fg == '总计'){ return 'background-color:#6293BB;color:#fff;font-weight:bold;'; } }">
我直接放在 onLoadSuccess里面发现,表格一直在刷新。后来想了下,才知道,因为里面有 view属性会进入死循环。不选刷新。
后来,直接放在了js初始化表格后面中顺利解决。