Primefaces(5.1)-通过移动其余列来调整列大小
Primefaces,版本5.1。 请告诉我,是否有可能在不减少下一列宽度的情况下更改列宽,而移动其余列 说明:Primefaces(5.1)-通过移动其余列来调整列大小,primefaces,Primefaces,Primefaces,版本5.1。 请告诉我,是否有可能在不减少下一列宽度的情况下更改列宽,而移动其余列 说明: 有可调整大小的列 调整第一列的大小时,第二列的宽度会发生变化 但是,需要在不减少第二列宽度的情况下移动其他列(第二列和其他列的宽度不会改变,并且在增加列的宽度后应该出现滚动) 如果你知道如何解决这个问题,请帮助我我也遇到过同样的问题。据我调查,问题的根源在于PrimeFaces的源datatable.js第2123行()中的方法“resize()” 如果您查看PrimeFaces S
如果你知道如何解决这个问题,请帮助我我也遇到过同样的问题。据我调查,问题的根源在于PrimeFaces的源datatable.js第2123行()中的方法“resize()” 如果您查看PrimeFaces Showcase,Resizeable columns(),您将能够在Chrome浏览器控制台中使用
PrimeFaces.widgets.widget\u form\u cars2.resize获得此方法代码>
有了这些知识,我们可以尝试用我们自己的resize来替换这个方法,它不会改变nextColumnHeader
,nextColumn
和nextcolumnheater
例如,在()上执行以下代码并播放第二张表
PrimeFaces.widgets.widget\u form\u cars2.resize=函数(事件,用户界面){
var列标题;
var变化=null;
var newWidth=null;
if(this.hasColumnGroup){
var groupResizer=this.findGroupResizer(ui);
columnHeader=groupResizer.parent();
}否则{
columnHeader=ui.helper.parent();
}
if(this.cfg.liveResize){
change=columnHeader.outerWidth()-(event.pageX-columnHeader.offset().left);
newWidth=(columnHeader.width()-change);
}否则{
change=(ui.position.left-ui.originalPosition.left);
newWidth=(columnHeader.width()+更改);
}
如果(新宽度>15){
columnHeader.width(新宽度);
var colIndex=columnHeader.index();
if(this.cfg.scrollable){
这是泰阿克隆
.find(PrimeFaces.escapeClientId(columnHeader.attr('id')+'u clone'))
.宽度(新宽度);
如果(this.footerCols.length>0){
var footerCol=this.footerCols.eq(colIndex);
页脚列宽度(新宽度);
}
}
}
}