【发布时间】:2011-06-14 20:17:42
【问题描述】:
有业务需要对项目进行分类。最好的想法似乎是将项目从一个列表拖放到类别列表中。类别的数量可能会有所不同,因此使用 p:dataTable。 发送了 Ajax 请求,但未从 dataTable 内部调用 onDrop 方法。当删除数据表和列并静态拥有输出面板时,会调用 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>
【问题讨论】:
标签: ajax jsf datatable primefaces