zoukankan      html  css  js  c++  java
  • DataGrid——行高不起作用

    问题1:rowStyler 设置行高不起作用:

    在 DataGrid 组件中,提供了 rowStyler 函数,用于设置行的css 样式,但是实践发现,对于height设置不起作用。跟踪代码发现如下:

    function _58b(trs1,trs2){
    for(var i=0;i<trs2.length;i++){
    var tr1=$(trs1[i]);
    var tr2=$(trs2[i]);
    tr1.css("height","");
    tr2.css("height","");
    var _591=Math.max(tr1.height(),tr2.height());
    tr1.css("height",_591);
    tr2.css("height",_591);
    }
    };

    在1.4版本中位于7855行。

    将一下两行注释掉即可:

    tr1.css("height","");
    tr2.css("height","");

     

    问题2:使用上述方法之后,行高只对内容区域起作用,对表头仍然不起作用,这是因为 rowStyler  函数只是在绑定数据的时候生成新行的时候被调用,在初始化,生成表头的过程中没有被调用。

    解决方法如下:

    在调用 datagrid 函数初始化之后,调用如下方法:

    function setHeaderHeight(divGrid,height) {
        divGrid.find(".datagrid-view").find("tr").css("height", height);
        var view = divGrid.find(".datagrid-view");
        var tr1 = view.find(".datagrid-view1").find(".datagrid-htable .datagrid-header-row");
        var tr2 = view.find(".datagrid-view2").find(".datagrid-htable .datagrid-header-row");
        _58b(tr1, tr2);
        function _58b(trs1, trs2) {
            for (var i = 0; i < trs2.length; i++) {
                var tr1 = $(trs1[i]);
                var tr2 = $(trs2[i]);
                var _591 = Math.max(tr1.height(), tr2.height());
                tr1.css("height", _591);
                tr2.css("height", _591);
            }
        };
    }

    其中 divGrid为表格的div容器的jquery对象。height则为'20px'类似的样式。

  • 相关阅读:
    如何自定义iOS中的控件
    NSArray中的对象进行排序
    微信摇动代码
    思考面向对象
    网络编程 socket编程
    iOS RUN LOOP 是个什么东西?
    iOS runloop 自定义输入源
    iPhone开发资源汇总
    UISearchBar
    重学STM32---(八)----SDIO
  • 原文地址:https://www.cnblogs.com/SunBlog/p/5664018.html
Copyright © 2011-2022 走看看