第一种:扩展方法

$(function(){
    /**
     * datagrid扩展
     */
	$.extend($.fn.datagrid.methods, {
	    fixRownumber : function (jq) {
	        return jq.each(function () {
	            var panel = $(this).datagrid("getPanel");
	            //获取最后一行的number容器,并拷贝一份
	            var clone = $(".datagrid-cell-rownumber", panel).last().clone();
	            //由于在某些浏览器里面,是不支持获取隐藏元素的宽度,所以取巧一下
	            clone.css({
	                "position" : "absolute",
	                left : -1000
	            }).appendTo("body");
	            var width = clone.width("auto").width();
	            //默认宽度是25,所以只有大于25的时候才进行fix
	            if (width > 25) {
	                //多加5个像素,保持一点边距
	                $(".datagrid-header-rownumber,.datagrid-cell-rownumber", panel).width(width + 5);
	                //修改了宽度之后,需要对容器进行重新计算,所以调用resize
	                $(this).datagrid("resize");
	                //一些清理工作
	                clone.remove();
	                clone = null;
	            } else {
	                //还原成默认状态
	                $(".datagrid-header-rownumber,.datagrid-cell-rownumber", panel).removeAttr("style");
	            }
	        });
	    }
	});
});
调用方法:


$("#easyui-datagrid").datagrid({
    onLoadSuccess : function () {
        $(this).datagrid("fixRownumber");
    }
});

第二种解决方法:修改easyui.css中的两个值就可以了。默认是25px

.datagrid-header-rownumber,.datagrid-cell-rownumber{
   width:40px;
 }


原文链接:http://blog.csdn.net/u012481520/article/details/52953898

欢迎留言