Primefaces数据表限制重新排序



我需要限制PrimeFaces数据表的重新排序事件,这样就不可能水平放置该表。或者,我想在拖动元素时添加一个边框,这样用户就可以看到,他可以把元素放在哪里。

我知道这些功能在正常的拖放功能下是可能的,就像我们在Primefaces展示中看到的那样。限制:https://primefaces.org/showcase/ui/dnd/draggable.xhtml(最后一个元素(
Droparea的突出显示:https://primefaces.org/showcase/ui/dnd/custom.xhtml

我浏览了primefaces的doku,但还没有发现任何可以限制该区域的东西。对于Highlight,我尝试使用ajax事件,通过使用带有js函数的onstart来为表设置样式类,但由于事件不是在拖动时触发的,而是通过拖放触发的,所以这并不像我希望的那样成功。

最小示例基于Primefaces Showcase处理重新排序。我的xode是展示的副本(https://primefaces.org/showcase/ui/data/datatable/reorder.xhtml)。我唯一改变的是要查看的数据表的宽度,是否仍然可以将元素移动到边界之上

有什么方法可以解决这个问题吗?如果有任何帮助,我将不胜感激,提前感谢!


PrimeFaces版本:6.2

我找到了一种可能对我有用的方法。我添加了一些JQuery,并按照以下方式设置轴

<script>
jQuery(function() {
PF('widgetVarTableName').tbody.sortable( "option", "axis", "y" );
});
</script>

提示
目前我面临的问题是,拖动的元素扩展到整个显示宽度,代码只运行一次,但这种方法可能会帮助其他人。。

最新更新