我正在使用JSF 2.2和PrimeFaces 5.2。
我的观点中有以下内容:
<div class="headerDetails">
<h1> Nombre Empresa: #{loginController.login.empresa} </h1>
<h1> Bienvenido: #{loginController.login.nombre}</h1>
</div>
我想动态隐藏并显示第一个<h1>
,具体取决于用户登录的内容。实现此目的的最佳方式是什么?
答案 0 :(得分:1)
这是我为有兴趣的人所做的:
<div class="headerDetails">
<h:panelGroup layout="block" rendered="#{loginTipoController.isEmpresarial()}">
<h1> Nombre Empresa: #{loginController.login.empresa} </h1>
</h:panelGroup>
<h1> Bienvenido: #{loginController.login.nombre}</h1>
</div>
我的控制器看起来像这样:
@ManagedBean
@ApplicationScoped
public class LoginTipoController {
private LoginTipo tipo;
public LoginTipo getTipo() {
return tipo;
}
public void setTipo(LoginTipo tipo) {
this.tipo = tipo;
}
@PostConstruct
public void init()
{
tipo = new LoginTipo();
//setting the value from get request
Map<String, String> params = FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap();
tipo.setTipo(params.get("tipo"));
}
public boolean isEmpresarial()
{
if(tipo.getTipo().equals("emp")) return true;
else return false;
}
}
如果用户是“ind”,我不想显示<h1>
标记。如果是“emp”,我想显示标签。