2011-06-28 64 views
10

在jqgrid中,我们有很长的文本从数据库中获取,但需要在JQgrid中显示时进行包装,有什么方法可以包装长文本(不包含任何空格)?因为我们有多个列需要显示,所以我们只有110px空余收款人姓名字段。我们的代码就像jqgrid长文本包装

{name:"firstPayeeName",index:"firstPayeeName", width:"110px", align:"left", sorttype:"string"}, 

请提供解决方案,如果有的话。提前致谢。

+2

你应该为行设置'white-space:normal!important;'样式。看看[答案](http://stackoverflow.com/questions/2994343/how-to-implement-wordwrap-on-jqgrid-which-works-on-ie7-ie8-and-ff/3006134#3006134)。如果您需要在列标题中包装文本,请参阅[这里](http://stackoverflow.com/questions/3641400/problem-with-wrapping-jqgrid-column-headers-on-ie/3641561#3641561)。 – Oleg

+0

只有当我们在单词之间有一些空格时,这才有效。但我没有任何空间,这个词很长。 – Sabarish

回答

29

在您需要显示测试的情况下,有没有空格或其他空白 CSS样式描述herehere不能使用。

我会建议你使用另一种CSS样式:

<style type="text/css"> 
    .ui-jqgrid tr.jqgrow td { 
     word-wrap: break-word; /* IE 5.5+ and CSS3 */ 
     white-space: pre-wrap; /* CSS3 */ 
     white-space: -moz-pre-wrap; /* Mozilla, since 1999 */ 
     white-space: -pre-wrap; /* Opera 4-6 */ 
     white-space: -o-pre-wrap; /* Opera 7 */ 
     overflow: hidden; 
     height: auto; 
     vertical-align: middle; 
     padding-top: 3px; 
     padding-bottom: 3px 
    } 
</style> 

如何从the demo看到文本 “testtesttesttesttesttesttesttesttest” 将显示为以下几点:

enter image description here

+0

任何方式来做视图模型对话中的自动换行?因为我在我的领域里有很长的文字。如果我点击查看,它显示与滚动条弹出。我不想那样。我想在那里换文... –

+0

@CJRamki:有很多选择。 [The answer](http://stackoverflow.com/a/8171924/315935)向您展示了您可以使用的主要CSS规则。您可以将其与'max-height'规则结合使用,如[here](http://stackoverflow.com/a/8378666/315935)。 – Oleg

1

上述方案没有为我工作,虽然exaclty,但几乎没有修改! 转到主题/ ui.jqgrid.css: 搜索:的.ui-的jqGrid tr.jqgrow TD: ,并在括号中插入:

word-wrap: break-word; // IE 5.5+ and CSS3 
     white-space: pre-wrap; // CSS3 
     white-space: -moz-pre-wrap; // Mozilla, since 1999 
     white-space: -pre-wrap; // Opera 4-6 
     white-space: -o-pre-wrap; // Opera 7 
     overflow: hidden; 
     height: auto; 
     vertical-align: middle; 
     padding-top: 3px; 
     padding-bottom: 3px 
+0

这是因为您的html中的样式表的_order_?听起来就像你在**你的链接到'ui.jqgrid.css'之前定义了你的自定义样式**如果你的样式没有做任何事情。 –

+0

我不记得现在很好。我为jqrid定义了自己的风格!也许顺序影响了这个!谢谢Scotty! – Paschalis

1
.ui-jqgrid tr.jqgrow td 
{   
    word-wrap: break-word; /* IE 5.5+ and CSS3 */ 
    white-space: pre-wrap; /* CSS3 */ 
    white-space: -pre-wrap; /* Opera 4-6 */ 
    white-space: -o-pre-wrap; /* Opera 7 */ 
    white-space: normal !important; 
    height: auto; 
    vertical-align: text-top; 
    padding-top: 2px; 
    padding-bottom: 3px; 
} 

使用上面的代码它的工作。如果你不给空间,它也会破线