Dojo dgrid:单排风格怎么样?

时间:2013-12-10 15:51:49

标签: javascript dojo dgrid

我想设置单行样式,避免为行的每个单元格定义格式化程序。是否有新的Dojo dgrid小部件的onStyleRow事件?

感谢。

1 个答案:

答案 0 :(得分:1)

我最终得到了两个截然不同的解决方案:

  1. 在使用dgrid的控制器中,基于https://github.com/SitePen/dgrid/issues/236#issuecomment-11508012

    给出的变通方法
        aspect.after(myDgrid, "renderRow", function(row, args) {
            var data = args[0];
            if (data.unread) {
                domClass.add(row, "unread");
            }
            return row;
        });
    
  2. 在我自己的dgrid定义中,但没有“use strict” - 否则这将无效并且您将收到此错误:TypeError: 'caller', 'callee', and 'arguments' properties may not be accessed on strict mode functions or the arguments objects for calls to them

    return declare("com.my.myDgrid", [ Grid, ... ], {
        columns : [ {
            ...
        } ],
    
        renderRow : function() {
            var row = this.inherited(arguments);
            var data = arguments[0];
            if (data.unread) {
                domClass.add(row, "unread");
            }
            return row;
        }
    });
    
  3. 通过这个简单的CSS规则完成样式:

        #myDgridId .unread td {
            font-weight: bold;
        }