我的页面有一个搜索按钮,可以为输入的地址带来费率。 在研究之后,我希望能够启用打印按钮。
<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>
我尝试使用render属性来接收我的searchBean的布尔值,但是没有人可以帮助我吗?
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方法由搜索按钮调用,然后它变为布尔打印,但不起作用。
答案 0 :(得分:2)
您的支持bean基本上没问题,您只需要修改前端页面。
就像@mabi,@ rion18和@Jaqen H'ghar所说,你应该:
booleanValue()
remoteCommand
的{{1}}致电onclick
。commandButton
上添加update="print"
。p:remoteCommand
代替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>
),您应该将其添加回来如果你使用我在这里发布的代码。bandeira1,bandeira2,bandeira1Value,bandeira2Value,origemInfo,addressInfo...
,以便调用p:commandButton
。 如果要删除我添加的按钮,请确保调用remoteCommand 。