首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Enable -在a p:datatable primefaces / jsf中的禁用按钮

Enable -在a p:datatable primefaces / jsf中的禁用按钮
EN

Stack Overflow用户
提问于 2014-10-26 10:21:27
回答 1查看 1.2K关注 0票数 1

我有一个包含人员列表的<p:datatable>,每一行都有一个用于启用/禁用人员的按钮。此按钮仅具有更改用户状态(活动/非活动)的功能。为了向用户展示,我有一个这样的:

代码语言:javascript
复制
<h:outputLabel value="Status" />
<h:selectOneMenu value="#{pessoaBean.ativo}">
    <f:selectItem itemLabel="Todos" itemValue="-1" />
    <f:selectItem itemLabel="Ativo" itemValue="1" />
    <f:selectItem itemLabel="Inativo" itemValue="0" />
</h:selectOneMenu>

这允许我只显示活动用户,或者不显示活动用户。这工作得很好。我的问题是,当我有一个人的活动列表时,我希望有一个按钮A,而当一个人不活动时,我想显示按钮B。每个按钮(A和B)都有改变用户状态的功能,但显然有一个按钮改变为活动的不活动的和相反的。

我的p:datatable如下:

代码语言:javascript
复制
<p:dataTable value="#{pessoaBean.pessoas}" var="pes" id="tabelaUsuarios"
             paginator="true" rows="10" emptyMessage="Nenhum registro encontrado"
             sortOrder="acending"   selectionMode="single" rowKey="#{pes.cdPessoa}" 
             rendered="#{pessoaBean.pessoas != null}"
             paginatorPosition="bottom"  scrollable="false">
    <p:column headerText="Nome">
        #{pes.nmPessoa}
    </p:column>
    <p:column headerText="Email" >
        #{pes.email}
    </p:column>
    <p:column headerText="Status">
        #{pes.flAtivo}
    </p:column>
    <p:column>
        <h:commandButton action="#{pessoaBean.bloquear}"  value="Bloquear" 
                         class="btn btn-default"  >
            <f:param value="#{pes.cdPessoa}" name="id" />
        </h:commandButton>
    </p:column>                 
</p:dataTable>

有人知道我怎样才能得到这个结果吗?只显示活动人员的按钮A和非活动的按钮B吗?

EN

回答 1

Stack Overflow用户

发布于 2014-10-27 16:15:04

您可以通过在同一列中有两个具有相反或不同rendered属性的按钮来实现这一点。如果"Bloquear“是你所指的按钮,它应该是这样的:

代码语言:javascript
复制
<p:column>
    <h:commandButton action="#{pessoaBean.bloquear}" value="Bloquear" 
                     rendered="#{pes.flAtivo eq 1}" class="btn btn-default">
        <f:param value="#{pes.cdPessoa}" name="id" />
    </h:commandButton>
    <h:commandButton action="#{pessoaBean.desbloquear}" value="Desbloquear" 
                     rendered="#{pes.flAtivo eq 0}" class="btn btn-default" >
        <f:param value="#{pes.cdPessoa}" name="id" />
    </h:commandButton>
</p:column> 

顺便说一下,你有一个拼写错误,它应该是sortOrder="ascending"

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26569193

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档