jqGrid - 动态设置标题

时间:2011-12-30 15:30:35

标签: jqgrid

我在jqGrid定义中设置了caption参数。我想知道是否有办法根据jqGrid插件附加到的表元素的class属性动态设置它。

HTML 1

<table id="myjqgrid" class="view"></table>
<div id="Pager"></div>

HTML 2

<table id="myjqgrid" class="edit"></table>
<div id="Pager"></div>

JQGrid定义

$("#myjqgrid").jqGrid({
    caption: ""     // this is what I want to set dynamically
})

1 个答案:

答案 0 :(得分:17)

您可以使用setCaption方法在网格上设置新标题:

var $grid = $('#myjqgrid');
$grid.jqGrid('setCaption', 'newCaption');

如果您需要设置标题取决于<table>元素的类,则代码可以如下所示

if ($grid.hasClass('edit')) {
    $grid.jqGrid('setCaption', 'Edit Caption');
} else if ($grid.hasClass('vew')) {
    $grid.jqGrid('setCaption', 'View Caption');
} else {
    $grid.jqGrid('setCaption', 'Default Caption');
}

关于setCaption方法,你唯一不能做的就是删除(隐藏)标题:如果你创建没有caption参数的网格,你可以得到的结果(或者caption: "")。删除(隐藏)您可以执行的标题

$(">div.ui-jqgrid-titlebar", $grid.closest('div.ui-jqgrid-view')).hide();

$($grid[0].grid.cDiv).hide();

(详见the answer)。