隐藏对话框后,另一个对话框也隐藏
问题描述:
我正在使用jsf页面,使用primefaces和我有一个问题: 我有一个对话框,女巫有一个按钮,点击后,我'另一个对话框(弹出)。 所以,我的问题是,当我关闭第二个对话框时,第一个对话框也关闭了。隐藏对话框后,另一个对话框也隐藏
所以,这是第一个对话框:
<h:form id="propertyForm">
<p:dialog id="propertyValuesDlg"
resizable="false"
modal="true"
closable="false">
<p:panelGrid columns="1" style="width: 100%;">
<p:dataTable var='propertyValue'
value="..."
id="propertyValuesTable"
widgetVar="propertyValuesTableWidget"
rowKey="..."
selection="...">
<p:ajax event="rowSelectCheckbox"/>
<p:ajax event="rowUnselectCheckbox"/>
<p:ajax event="toggleSelect"/>
<p:column style="text-align:center; width:20px;"
selectionMode="multiple"/>
<p:column headerText="Property Name">
<h:outputText value="..." title="..."/>
</p:column>
<p:column headerText="Property Value">
<p:inputText value="..."/>
</p:column>
</p:dataTable>
<f:facet name="footer">
<p:commandButton value="Add"
icon="button-add-class"
oncomplete="addPropertyDialog.show();"
update=":addPropertyDlg"
immediate="true"/>
</f:facet>
</p:panelGrid>
</p:dialog>
</h:form>
后点击“添加”按钮,我得到第二个对话框:
<p:dialog id="addPropertyDlg"
widgetVar="addPropertyDialog"
resizable="false"
appendToBody="true">
<p:panel id="addPropertyPanel" style="width: 100%">
<h:form>
<h:panelGrid columns="3">
<p:outputLabel for="addPropertyDropdown"
value="Select property: "
style="width: 80px"/>
<p:selectOneMenu id="addPropertyDropdown"
value="..."
effect="fade"
converter="..."
style="width: 150px;">
<f:selectItems value="..."
var=".."
itemLabel="..."
itemValue="..."/>
</p:selectOneMenu>
<p:commandButton value="OK"
icon="button-accept-class"
actionListener="..."
oncomplete="addPropertyDialog.hide();"
update=":propertyForm:propertyValuesDlg"/>
</h:panelGrid>
</h:form>
</p:panel>
</p:dialog>
因此,任何想法,我应该怎么做,以保持propertyValuesDLg打开?
答
哈特姆Alimam写道:
那是因为你在确定按钮更新的第一个对话框!基本上,如果在自然地打开对话框时更新对话框,它将关闭,因为DOM中的内容已被替换。尝试更新propertyValuesTable。
将Form Element放置在两个更高的元素上。像
这是因为你正在更新OK按钮中的第一个对话框!基本上,如果在自然地打开对话框时更新对话框,它将关闭,因为DOM中的内容已被替换。尝试更新'propertyValuesTable'。 – 2014-10-01 06:52:30
@HatemAlimam非常感谢,它为我工作!您可以将其作为答案发布 – 2014-10-01 08:15:45