Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/jsf/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ajax 如何在datatable内使用PrimeFaces p:droppable?_Ajax_Jsf_Datatable_Primefaces - Fatal编程技术网

Ajax 如何在datatable内使用PrimeFaces p:droppable?

Ajax 如何在datatable内使用PrimeFaces p:droppable?,ajax,jsf,datatable,primefaces,Ajax,Jsf,Datatable,Primefaces,业务上需要对项目进行分类。最好的办法似乎是将项目从一个列表拖拽到一个类别列表中。类别的数量可能会有所不同,因此使用p:dataTable。 已发送Ajax请求,但未从dataTable内部调用onDrop方法。当删除datatable和column并静态地拥有outputpanels时,是否调用onDrop 如何最好地将项目拖放到动态变化的类别中 <h:form prependId="false"> <h:panelGrid column

业务上需要对项目进行分类。最好的办法似乎是将项目从一个列表拖拽到一个类别列表中。类别的数量可能会有所不同,因此使用p:dataTable。 已发送Ajax请求,但未从dataTable内部调用onDrop方法。当删除datatable和column并静态地拥有outputpanels时,是否调用onDrop

如何最好地将项目拖放到动态变化的类别中

        <h:form prependId="false">
            <h:panelGrid columns="2">
                <p:dataTable id="itemstable" value="#{categoryBean.items}" var="item">
                    <p:column>
                        <p:outputPanel id="itemrow">
                            <h:outputText value="#{item}"></h:outputText>
                        </p:outputPanel>
                        <p:draggable for="itemrow"></p:draggable>
                    </p:column>
                </p:dataTable>

                <p:dataTable value="#{categoryBean.categories}" var="cat">
                    <p:column>
                        <p:outputPanel id="cats1">
                            <h:outputText value="category1"></h:outputText>
                        </p:outputPanel>
                        <p:droppable for="cats1"
                                     dropListener="#{categoryBean.onDrop}"
                                     tolerance="pointer"
                                     activeStyleClass="slotActive"
                                     datasource="itemstable">
                        </p:droppable>
                    </p:column>
                </p:dataTable>
            </h:panelGrid>
        </h:form>

在PrimeFaces中有一个,当
嵌套在任何数据重复元素中时,不会调用dropListener。我还尝试使用Facelets repeat标记
,但没有像拖动到
那样调用dropListener

在PrimeFaces showcase中,所有拖放示例都具有静态可拖放区域

情况不再如此。通过从一个单元格到另一个单元格的拖放操作使其正常工作。@Thomas6767太棒了!你能把它固定在哪个PrimeFaces版本中作为参考吗?适用于PrimeFaces 5.1