1

我想要做的是让用户单击一个按钮,该按钮打开一个对话框,询问您是否要开始?是-否。

如果他们选择是,则数据库中的值设置为 1,否则保留为 0。

一旦他们单击“是”,就应该呈现一个思维导图——然而,尽管使用了我认为正确的选项,但它并没有奏效。如果我在单击“是”后刷新页面,则会呈现思维导图,但如果可能的话,我想使用 ajax 公式来完成。

这是我当前的代码:

<p:confirmDialog id="confirmDialog" 
                 message="Are you sure about starting the round?"
                 header="Initiating round" 
                 severity="alert" 
                 widgetVar="confirmation"
                 >

    <p:growl id="growl2" showDetail="true" life="3000"/>

    <p:commandButton id="confirm" 
                     value="Yes Sure" 
                     update="growl2,mmBody,mm" 
                     oncomplete="confirmation.hide(),mm.update()"
                     actionListener="#{mmBean.checkRenderMM()}"
                     />

    <p:commandButton id="decline"
                     value="Not Yet" 
                     onclick="confirmation.hide()"
                     type="button"
                     /> 

</p:confirmDialog>

<p:mindmap id="mindmap" value="#{mmBean.root}" widgetVar="mm">
  ...
</p:mindmap>    

Bean 代码非常简单;只是一个简单的检查它是真还是假:

public Boolean checkRenderMM(){
    if ( this.cUser.getReadytobegin() != 1 ){
        this.setRenderMM( false );
    }
    else{
        this.setRenderMM( true );
    }
    return this.getRenderMM();
}

Get 和 set 是标准的 getter 和 setter。

我想知道有没有办法从豆子内部做到这一点?那是:

public Boolean checkRenderMM(){
    if ( this.cUser.getReadytobegin() != 1 ){
        this.setRenderMM( false );
    }
    else{
        this.setRenderMM( true );
    }

    SOME CODE THAT UPDATES THE MINDMAP COMPONENT FROM HERE

    return this.getRenderMM();
}

或类似的规定。

谢谢!

4

0 回答 0