带有隐藏列问题的 primefaces 数据表行扩展
primefaces datatable rowexpansion with hidden column issue
我正在使用 PrimeFaces 6.0
我的目标是使用 rowexpansion 创建一个数据 table,但我不想显示 rowtoggler。扩展将发生在行选择上。为此,我在我的代码中添加了:
$(document).ready(function() {
rowExpansion(PF('carDataTable'));
});
function rowExpansion(dataTable) {
//dataTable should be the widgetVar object
var $this = dataTable;
$this.tbody.off('click.datatable-expansion', '> tr')
.on('click.datatable-expansion', '> tr', null, function() {
//toggle the current row the old toggler
$this.toggleExpansion($(this).find('div.ui-row-toggler'));
});
}
Rowtoggler 列隐藏为:
<p:column style="display:none">
<p:rowToggler />
</p:column>
问题是当行被扩展时,行的大小会缩小。当存在除 rowtoggler 列以外的任何隐藏列时,也会发生这种情况。不展开和展开的情况如下:
before expansion
after expansion
任何解决方法或解释表示赞赏。
问题已通过解决方法解决。
与其将列 属性 设置为 display:none
,不如通过设置 0 大小来隐藏它。
<p:column style="width:0px;height:0px;padding:0px;border:0px">
<p:rowToggler />
</p:column>
只是一个更新,但现在您可以将列可见性设置为 false。
<p:column visible="false">
<p:rowToggler/>
</p:column>
我正在使用 PrimeFaces 6.0 我的目标是使用 rowexpansion 创建一个数据 table,但我不想显示 rowtoggler。扩展将发生在行选择上。为此,我在我的代码中添加了:
$(document).ready(function() {
rowExpansion(PF('carDataTable'));
});
function rowExpansion(dataTable) {
//dataTable should be the widgetVar object
var $this = dataTable;
$this.tbody.off('click.datatable-expansion', '> tr')
.on('click.datatable-expansion', '> tr', null, function() {
//toggle the current row the old toggler
$this.toggleExpansion($(this).find('div.ui-row-toggler'));
});
}
Rowtoggler 列隐藏为:
<p:column style="display:none">
<p:rowToggler />
</p:column>
问题是当行被扩展时,行的大小会缩小。当存在除 rowtoggler 列以外的任何隐藏列时,也会发生这种情况。不展开和展开的情况如下: before expansion after expansion
任何解决方法或解释表示赞赏。
问题已通过解决方法解决。
与其将列 属性 设置为 display:none
,不如通过设置 0 大小来隐藏它。
<p:column style="width:0px;height:0px;padding:0px;border:0px">
<p:rowToggler />
</p:column>
只是一个更新,但现在您可以将列可见性设置为 false。
<p:column visible="false">
<p:rowToggler/>
</p:column>