如图所示,我们有一个数据表。有3个卡住的列,其余可滚动。卡住的列被错误分配,如图所示。如果删除了“卡住的列”属性,则表将正常显示。任何解决问题的建议。

最佳答案

过去,我卡住数据表并在不同的帖子中使用许多不同的脚本时遇到了类似的问题,我发现以下脚本可在所有浏览器中使用,并且不需要您设置高度即可计算出来。另外,它还会触发浏览器事件,以强制调整表的大小。

synchronizeRowsHeight : function() {
   var $leftRows = $('.ui-datatable-frozenlayout-left').find('tr');
   var $rightRows = $('.ui-datatable-frozenlayout-right').find('tr');

   $leftRows.each(function(index) {
         var $leftRow = $(this);
         var $leftHeight = $leftRow.innerHeight();
         var $rightRow = $rightRows.eq(index);
         var $rightHeight = $rightRow.innerHeight();

         if ($rightHeight > $leftHeight) {
                $leftRow.innerHeight($rightHeight);
                var diff = $rightHeight - $leftRow.innerHeight();
                if (diff != 0)
                       $leftRow.innerHeight($rightHeight + diff);
         } else if ($rightHeight < $leftHeight) {
                $rightRow.innerHeight($leftHeight);
                var diff = $leftHeight - $rightRow.innerHeight();
                if (diff != 0)
                       $rightRow.innerHeight($leftHeight + diff);
         }
   })

   // fire a resize event to tell the table to repaint
   $(window).trigger('resize');
}

关于jsf-2 - Primefaces数据表卡住列未对齐,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25887963/

10-15 16:42