2

我是 J Query 的新手,我正在尝试http://www.trirand.com/blog/jqgrid/jqgrid.html中的一些示例,我看到列名是用 JS 编写的,它们显示在 Grid 中。

我对 JQGrid 有这个要求,以显示他们每次搜索的列。

示例:我有一组标准列要显示在网格中,例如学生姓名、地址、电话号码。

假设如果用户按学生 ID 搜索,我需要将学生 ID 作为列添加到结果中。

我应该表现得像

"student name, Address,Phone number,StudentID"

如果他们按总计搜索

我应该表现得像

"student name, Address,Phone number,Total"

为了简化,我需要在用户单击搜索后向 JQGrid 添加一列。

我可以在 JQGrid 中执行此操作吗?我该如何实现呢?

4

2 回答 2

1

此答案取自Oleg 的旧版答案

无法jqGrid动态添加列。您必须重新创建整个网格并colModel增加一列。如果你使用单独colNames的,那么数组的大小也必须增加。GridDestroy例如,您可以使用破坏现有网格。您实际上可以像往常一样绑定一个额外的列,但您可以在运行时使用jquery. 因此,您可以添加一列并根据您的要求使用隐藏/显示它。

        $("#grid").showCol("column_name");
        $("#grid").hideCol("column_name");
于 2013-03-13T07:36:35.217 回答
0

我相信您从数据库中获得了额外的列,它是记录集的一部分。

检查这个小提琴

http://jsfiddle.net/jqwidgets/6X3EZ/

现在在上面的链接中,您可以看到按钮单击列可以并且确实会更改。

您现在要做的就是,在获取记录集的代码部分中,编写一个带有 var 列的脚本元素,并在这个名为 columns 的变量中填写 jqxgrid 的列名和相关参数。

完成此操作后,在准备好编写网格的文档中添加变量。

$("#jqxgrid").jqxGrid({
 width: 500,
 theme: 'energyblue',
 source: adapter,
 columns: columns});

希望这可以帮助。

于 2017-04-05T22:40:41.113 回答