java - Primefaces 树 : don't remove the node after drag and drop

标签 java jsf primefaces drag-and-drop tree

原先的PrimeFacesTree中的节点拖拽后是否可以不移除?默认行为是删除在另一个地方拖放的节点。我可以防止这种情况发生吗?

我正在使用 Primefaces 4.0

最佳答案

在 dropEvent 上没有任何预制的属性来复制节点。

解决方案是为您的 <p:tree> 添加一个监听器元素:

<p:tree listener="#{managingBean.onDragDrop}" />

然后您需要通过在您的 backbean 方法中复制它来在初始位置重新创建节点:

public void onDragDrop(TreeDragDropEvent event) {
    TreeNode dragNode = event.getDragNode();
    TreeNode dropNode = event.getDropNode();
    int dropIndex = event.getDropIndex();

    // Logic to repopulate initial Tree element
}

别忘了重新画你的树

关于java - Primefaces 树 : don't remove the node after drag and drop,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26781289/

相关文章:

java - 将 lambda 传递给 Timer 而不是 TimerTask

mysql - 无法在jsf中编辑数据库表

java - 如何在eclipse中跟随xhtml到Bean类?

java - 无法从 bean 中找到组件

javascript - 检查f :items value based on p:selectManyCheckbox using javascript

css - PrimeFaces 自动完成多种样式,但 Multiple=false

java - 当 Spring/Hibernate JPARepository 返回时,实体处于什么生命周期状态?

java - 主 Activity 重新加载时没有动画

java - JUnit 测试返回 null 和 false

java - jsf表达式语言中的null检查