2013-09-11 2 views
0

Я динамически создаю свои панели, я хочу редактировать их с помощью диалогового окна. Я могу обновить базу данных все работает отлично, но вид не обновляется: Это мой DialogBox с помощью командной кнопки «submitDialog»:Как обновить содержимое панели, когда я нажму кнопку «Command»?

 <p:dialog id="dialog" header="Add Memo" widgetVar="dialogMemo" resizable="false" > 
     <h:form id="formDialog"> 
      <h:panelGrid columns="2" cellpadding="5"> 
       <h:outputLabel for="commentInput" value="Comment:" /> 
       <p:inputTextarea id="commentInput" value="#{dashboardBean.currentComment}" rows="6" cols="25" label="commentInput" required="true"/> 
       <p:watermark for="commentInput" value="Enter your memo..."/> 
       <h:outputLabel for="selectShare" value="Share Memo: " /> 
       <p:selectBooleanCheckbox id="selectShare" /> 

       <h:outputLabel for="choosePriority" value="Priority:" /> 
       <p:selectOneMenu id="choosePriority" value="#{dashboardBean.currentPriority}" label="choosePriority"> 
        <f:selectItem itemLabel="Low Priority" itemValue="1" /> 
        <f:selectItem itemLabel="Medium Priority" itemValue="2" /> 
        <f:selectItem itemLabel="High Priority" itemValue="3" /> 
       </p:selectOneMenu> 

       <p:commandButton id="submitDialog" icon="ui-icon-check" value="Confirm" ajax='false' type="submit"/> 
       <p:commandButton icon="ui-icon-close" onclick="dialogMemo.hide();" value="Cancel"/> 
      </h:panelGrid> 
     </h:form> 
    </p:dialog> 

и мои панели будут добавлены в «dashboardId»:

<p:layout fullPage="true"> 
     <p:layoutUnit id="leftPanel" position="west" size="250" header="My Memos" resizable="false" closable="false" collapsible="false"> 
      <h:form id="form"> 
       <p:commandButton id="addMemo" icon="ui-icon-plus" onclick="dialogMemo.show();" type="submit" action="#{dashboardBean.getEditControl}"/> 
       <p:dashboard id="dashboardId" model="#{dashboardBean.model}" binding="#{dashboardBean.dashboard}"> 
       </p:dashboard> 
      </h:form> 
     </p:layoutUnit> 
    </p:layout> 

Я пытаюсь решить эту проблему, когда я открываю DialogBox, я установить атрибут обновления моей CommandButton «submitDialog» с панелью ID:

public void handleEdit(ActionEvent actionEvent) 
{ 
    UIComponent component = actionEvent.getComponent().getParent().getParent(); 
    String id = component.getId(); 

    UIViewRoot view = FacesContext.getCurrentInstance().getViewRoot(); 
    CommandButton button = (CommandButton) view.findComponent("formDialog:submitDialog"); 
    button.setUpdate(":form:" + id); 
} 

база данных модифицированная правильно, страница перезагружается, но моя панель НЕ обновляется.

ответ

0

Я решил проблему, отредактировав непосредственно HtmlOutputText моей панели.

Смежные вопросы