grid中实现换行

来源:互联网 发布:fm2016汉化补丁 mac 编辑:程序博客网 时间:2024/05/29 15:24

在工作中碰见了这样一个问题:在用htmleditor编辑器编写的内容在grid的列中显示的时候可以显示全部内容(这时会将这一列撑起来)而在用textarea编辑的内容则不会显示完全。

后来知道是因为textarea的底部样式导致的:.x-grid-cell-inner中的text-overflow,white-space

在这里简单说下这两个样式:

text-overflow  在Ext的样式为 clip

text-overflow: clip  不显示省略标记,直接截取

text-overflow:ellipsis 当对象文本溢出时显示省略标记

white-space 在Ext的样式为 nowrap

在Extjs <wbr>grid中列显示全内容(非多余部分用鈥︹ο允荆

在这两个样式中只修改white-space为normal就可以(如果改底部样式所有grid的显示都将改变)

因为在工作中有可能不是将所有的grid的样式都改为显示全部内容撑开行高,因此我们要在所在的列中更改样式

在要显示的列的renderer事件中更改

renderer: function (v, m, r) {
           m.attr ='style="white-space:normal;
word-wrap:break-word;word-break:break-all;"';

          return v;

       }

好了,就上面的三行代码就OK啦(O(∩_∩)O~说了那么多废话就三句重点*^_^*)

在m.attr中还可以给所在列添加其他样式,以个人需要添加

添加word-wrap:break-word;word-break:break-all;这两个样式用于改进浏览器兼容问题(在火狐英文和数字不换行) 至此IE,谷歌,火狐都可换行

原创粉丝点击