У меня проблема с моим меню. Это позволит получить пользователей, которые находятся в таблице базы данных пользователей.
Но когда я пытаюсь ввести имя в поле поиска и нажимаю кнопку поиска, ничего не происходит. Я понял, что он обновит всю страницу четвертой, затем выполнит действие кнопки и обновит всю страницу как пятую.
<ui:composition xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
template="../../templates/default.xhtml">
<ui:define name="title">Any great stuff</ui:define>
<ui:define name="content">
<div class="row container">
<div class="small-12 columns">
<h1>Any great stuff</h1>
<div class="row">
<div class="small-12 large-12 columns">
<section class="class">
<div class="row">
<h:form>
<div class="small-4 columns">
<div class="row collapse">
<div class="small-8 columns">
<h:selectOneMenu id="actionDropdown" value="#{adminController.action}">
<f:selectItem id="actionItem0" itemValue="0" itemLabel="Choose"/>
<f:selectItem id="actionItem1" itemValue="1" itemLabel="Delete"/>
</h:selectOneMenu>
</div>
<div class="small-4 columns">
<h:commandButton value="Übernehmen" class="button postfix" action="#{adminController.actionUser}" />
</div>
</div>
</div>
<div class="small-4 columns">
<div class="row collapse">
<div class="small-8 columns">
<h:selectOneMenu id="roleDropbown" value="#{adminController.role}">
<f:selectItem id="roleItem0" itemValue="0" itemLabel="Choose item"/>
<f:selectItem id="roleItem1" itemValue="1" itemLabel="Item2"/>
<f:selectItem id="roleItem2" itemValue="2" itemLabel="Item3"/>
<f:selectItem id="roleItem3" itemValue="3" itemLabel="Item4"/>
<f:selectItem id="roleItem4" itemValue="4" itemLabel="Item5"/>
</h:selectOneMenu>
</div>
<div class="small-4 columns">
<h:commandButton value="Wechseln" class="button postfix" action="#{adminController.changeRole}" />
</div>
</div>
</div>
<div class="small-4 columns">
<div class="row collapse">
<div class="small-8 columns">
<input type="text" id="usersearch" value="#{adminController.searchvalue}" placeholder="Suchen..."/>
</div>
<div class="small-4 columns">
<h:commandButton id="usersearchButton" value="Suchen" class="button postfix" action="#{adminController.searchUser}">
<f:ajax execute="@form" render="@none" />
</h:commandButton>
</div>
</div>
</div>
</h:form>
</div>
<table>
<thead>
<tr>
<th width="5"><input onClick="selectAll(this)" type="checkbox"/></th>
<th></th>
<th>Number</th>
<th width="250">Name</th>
<th width="250">E-Mail</th>
<th width="150">Role</th>
</tr>
</thead>
<tbody>
<ui:repeat value="#{adminController.userList}" var="user">
<tr>
<td><input type="checkbox" name="user[]" value=""/></td>
<td><img src="#{user.picture}" alt="Picture"/></td>
<td>#{user.registerNumber}</td>
<td>#{user.name}</td>
<td><a href="mailto:#{user.email}">#{user.email}</a></td>
<td>#{user.role}</td>
</tr>
</ui:repeat>
</tbody>
</table>
</section>
</div>
</div>
</div>
</div>
<script src="../../js/script.js"></script>
</ui:define>
</ui:composition>
Мой adminController.java использует
public List<User> getUserList()
для заполнения значений таблицы. Это работает хорошо, когда я даю значение поиска статичное значение, оно тоже будет работать. Что мне нужно ввести в свой xhtml выше? (Проблема в том, что я ничего не знаю о x/html и его тегах, поэтому, пожалуйста, позаботьтесь об этом.) Кто-то сказал мне, что я должен использовать Panelgroup, но я не знаю, где. (Я переименовал значения элементов, вам не о чем беспокоиться)