启用/禁用命令按钮的主面



我的页面有一个搜索按钮,带来的价格地址输入。研究结束后,我想要按住打印按钮。

                <p:commandButton value="#{msg['btn-search']}"
                    styleClass="btn btn-primary" onclick="codeAddress()" />
                <p:remoteCommand actionListener="#{searchBean.addMarker()}"
                    name="consultaValor"
                    update="bandeira1, bandeira2,bandeira1Value, bandeira2Value,origemInfo,addressInfo"/>
                <p:commandButton id="print" value="Imprimir" styleClass="btn btn-primary" rendered="#{searchBean.print.booleanValue()}" >
                    <p:printer target="information" />
                </p:commandButton>

我试图使用接收我的搜索bean的布尔值的呈现属性,但没有工作,有人可以帮助我吗?

private Boolean print = false;
public Boolean getPrint() {
    return print;
}
public void setPrint(Boolean print) {
    this.print = print;
}
public void addMarker() {
    Marker marker = new Marker(new LatLng(lat, lng),address);
    emptyModel.addOverlay(marker);           
    result = true;
    String wktFilter = "POINT("+getLng()+" "+getLat()+")";
    findByWKT(wktFilter);
    print = true;
}

addMarker方法由搜索按钮调用,然后它将布尔值变为true,但不工作。

你的后台bean基本没问题,你只需要修改你的前端页面。

就像@mabi, @rion18和@Jaqen H'ghar说的,你应该:

  1. 移除booleanValue()
  2. commandButtononclick呼叫remoteCommand
  3. p:remoteCommand上添加update="print"
  4. 使用disabled代替rendered .(这里我使用display .)

所以你的前端看起来像:

<p:commandButton value="btn-search" styleClass="btn btn-primary" />
<p:commandButton value="remote" onclick="consultaValor()"/>
<p:remoteCommand actionListener="#{searchBean.addMarker()}"
                         name="consultaValor" 
                         update="print"/>
<p:commandButton id="print" value="Imprimir" styleClass="btn btn-primary" style="display:#{searchBean.print?'inline':'none'}" >
</p:commandButton>

请注意

  1. 我在你的代码中删除了一些东西,因为我不知道它们在你的代码中意味着什么(如bandeira1,bandeira2,bandeira1Value,bandeira2Value,origemInfo,addressInfo...), 你应该把它们添加回来如果你使用我在这里发布的代码。
  2. 我添加了一个p:commandButton,以便调用p:remoteCommand确保remoteCommand被调用如果你想删除我添加的按钮。

相关内容

  • 没有找到相关文章

最新更新