【问题标题】:extjs two types of alignment in the same columnextjs 两种对齐方式在同一列
【发布时间】:2017-04-27 06:46:26
【问题描述】:

我有一份报告,需要以不同方式对齐列。我需要将具有数值的行与数字右对齐,并将具有文本的行向左对齐。

是否有针对此类问题的配置/功能,或者我应该使用 CSS 吗?

Fiddle with the grid

【问题讨论】:

  • 更新了我的答案,我只是没看你的 ext 版本

标签: javascript alignment extjs4.1


【解决方案1】:

你可以在列渲染器上做你想做的事,像这样改变 align 属性并做你需要的计算:

renderer:function(val,cell){
        if(parseInt(val))
           cell.align='right';
        return val;
    }

如果您的文本仅由没有任何数字的单词组成,则解析 int 将起作用,在您的情况下,您可以检查字符串是否只有带有正则表达式的数字:

renderer:function(val,cell){
            if(val.match(/^[0-9]+$/))
               cell.align='right';
            else
               cell.align='left';
            return val;
        }

Working fiddle here

看看电话列渲染器。

[更新]

抱歉没有阅读您的 Ext 版本,您可以像这样使用我的功能:

我还用数字中的点更新了案例。

renderer:function(val,cell){
                    if(val.match(/^[0-9]*\.?[0-9]*$/))
                       cell.style='text-align:right;';
                    else
                       cell.style='text-align:left;';
                    return val;
                }

Example with your fiddle

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-17
    • 1970-01-01
    • 2017-03-06
    • 1970-01-01
    • 2019-12-10
    • 1970-01-01
    相关资源
    最近更新 更多