Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jsf 2 如何在ui中仅显示渲染行并隐藏其他行:重复_Jsf 2_Facelets - Fatal编程技术网

Jsf 2 如何在ui中仅显示渲染行并隐藏其他行:重复

Jsf 2 如何在ui中仅显示渲染行并隐藏其他行:重复,jsf-2,facelets,Jsf 2,Facelets,我只需要在搜索结果的中显示选定的行。这是我的密码: <h:inputText value="#{user.lname}" required="false" class="defaultText1 c_8" title="Search by user"></h:inputText> <h:commandButton id="submit" name="submit" action="#{user.retrieveMembersByName}" /> &l

我只需要在搜索结果的
中显示选定的行。这是我的密码:

<h:inputText value="#{user.lname}" required="false" class="defaultText1 c_8" title="Search   by user"></h:inputText>
<h:commandButton id="submit" name="submit"  action="#{user.retrieveMembersByName}" />

<ui:repeat id="dtable" var="u" value="#{user.getUserList()}" varStatus="status" rendered="#{not empty user.dataList}">

        <li>
        <a href="#">#{u.memberId}</a>
         <a href="#" >#{u.groupId}</a>
        <a href="#">#{u.fname}</a>
        <a href="#">#{u.mname}</a>
                </li>
</ui:repeat> 


  • 现在它正在显示所有行。如果我输入
    ,它将只显示搜索到的单行。但是,我希望显示所有行,并且仅当我搜索时,它应该显示单行。或者我可以突出显示搜索的行吗?

    检查某些条件,并显示一个带有附加类的元素以“突出显示”结果。如果需要,还可以更改其他元素的类,即隐藏它们

    观点:

    <h:form>
        <h:inputText value="#{userBean.userName}" required="true" />
        <h:commandButton value="Search" action="#{userBean.search}" />
        <ui:fragment rendered="#{not empty userBean.userList}">
            <ul>
                <ui:repeat value="#{userBean.userList}" var="user">
                    <li class="#{fn:contains(user.name, userBean.userName) ? 'highlight' : 'grayed'}"><a href="#">#{user.name}</a></li>
                </ui:repeat>
            </ul>
        </ui:fragment>
    </h:form>
    
    
    
    这也可以通过带参数的EL 2.2方法调用来完成,而不是使用

    豆子:

    @ManagedBean
    @ViewScoped
    public class UserBean implements Serializable {
    
        private List<User> userList;//getter
        private String userName;//getter+setter
        public String search() {
            //load data and handle exceptions, if needed, do business job
            userList = userDAO.find(userName);
        }
    
    }
    
    @ManagedBean
    @视域
    公共类UserBean实现了可序列化{
    私有列表userList;//getter
    私有字符串用户名;//getter+setter
    公共字符串搜索(){
    //加载数据并处理异常,如果需要,执行业务任务
    userList=userDAO.find(用户名);
    }
    }
    
    Hi@skuntsel感谢您的回复…..行的高亮显示有效…但我想在显示serched元素时隐藏其他行。但现在它显示所有行。我已尝试在Bean中使用if()条件进行检查,但没有成功…您能告诉我如何操作吗。