【发布时间】:2025-12-17 23:50:01
【问题描述】:
我是 JSF2 的新手。 我正在尝试使用 p:dialog 显示表格。 该表具有项目列表,并且在行尾具有此删除功能。我的问题是当它单击删除时,整个页面重新加载并且我的弹出表关闭。 但是,当它不在 p:dialog 中时,删除功能可以正常工作。 我的 bean,无论是视图还是会话范围,都会产生相同的输出。
这是我的 bean 中的删除代码
public String delete(Items items) {
getItemList.remove(items);
return null;
}
截取我的 xhtml,
<p:dialog header="Item Table" widgetVar="popUpTbl" modal="true" >
<h:form>
<p:dataTable style="width:800px;height:485px;" id="popUpTbl" var="item" value="#{myBean.itemList}" >
<p:column headerText="Item A">
<h:outputText value="#{item.itemA}" />
</p:column>
<p:column headerText="Item B">
<h:outputText value="#{item.itemB}" />
</p:column>
<p:column headerText="Action">
<h:commandLink value="Delete" action="#{myBean.delete(item)}" />
</p:column>
</p:dataTable>
</h:form>
</p:dialog>
【问题讨论】:
-
在
<h:form>和<p:dialog>中添加 id 并通过提供完全限定名称来更新表单,在这种情况下只是:dialogId:formId并从<h:commandLink>更新它
标签: java primefaces xhtml