如何包装jqGrid内容?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何包装jqGrid内容?相关的知识,希望对你有一定的参考价值。

我想将内容包装在jqGrid中,它将采用以下格式

Input string
2013/05/28 10:54 - Default - Subject A Task added

Output String 
2013/05/28 10:54 - Default 
Subject A Task added

下面是我给出要在屏幕上显示的内容的代码

jQuery("#message").jqGrid({
    datatype : "local",
    data : resultSet,
    height :250,
    width : 960,
    sortable : false,
    ignoreCase : true,
    sortorder : "desc",
    colNames : [''], 
    colModel : [ {
        name : 'content',
        index : 'content',
        width : '10%',
        align : 'center',   
        sortable : false,
        search : false
    }],
    rowList:[10,20,30],
    pager : '#pager',
    rowNum : 10,
    altRows : true,
    altclass:"myclass",
    viewrecords : true,

});

我试过像这样的nltobr

loadComplete : function() {
    for (var i = 0; i < resultSet.length; i++) {
        resultSet[i].messageContent = nl2br(resultSet[i].messageContent);
    }
}

那不行。

有没有办法根据第二个hipen进行换行?我也想大胆第一行。

答案

首先,nltobr可以在服务器代码中使用,而不是在javascript回调方法中,loadComplete将在填充网格后执行。秒将在网格内容放入网格后调用回调loadComplete。如果要对resultSet数据进行一些修改,则应在创建数据的网格之前执行此操作。

你写过关于内容的包装,但nltobr的使用和你发布的文本示例表明你在文本中只有新的行字符 。它是

The demo使用您发布的文本,并在文本中包含 。结果看起来像你想要的

如果你真的需要包装文本,那么我建议你阅读以下答案:qazxsw poi,qazxsw poi和qazxsw poi。

更新:如果您需要使粗体显示某些列的多行内容的第一行,您可以在文本中插入this one。如果不使用jqGrid的this one选项,则可以在创建jqGrid之前修改输入数据。例如this one修改<strong>列的内容:

autoencode: true

the demo演示了如何使用自定义格式化程序来做同样的事情。如果使用jqGrid的note选项,则应该使用该方法。 var i, str, a; for (i = 0; i < mydata.length; i++) { str = mydata[i].note; if (typeof str === "string") { a = str.split(" "); if (a.length > 1) { a[0] = "<strong>" + a[0] + "</strong>"; mydata[i].note = a.join(" "); } } } 列的格式化程序在演示中定义为

Another demo

以上是关于如何包装jqGrid内容?的主要内容,如果未能解决你的问题,请参考以下文章

在 IE 上包装 jqGrid 列标题的问题

在IE上包装jqGrid列标题的问题

如何组合绑定片段而不将它们包装在 XML 文字中

如何包装所有片段(不在里面)or) with?

如何在适用于 IE7、IE8 和 FF 的 jqGrid 上实现自动换行

如何在网格内容加载时隐藏jqgrid标头?