Перехват JSF-проверок - PullRequest
       1

Перехват JSF-проверок

0 голосов
/ 21 апреля 2011

Я начинаю знакомиться с JSF, и мне удалось добавить несколько стандартных валидаторов, которые отображаются в сообщениях, которые я определил, но они проверяются только тогда, когда я нажимаю кнопку, чтобы отправить форму, где компоненты, которые должны быть проверены в. Я хотел бы, чтобы эти компоненты были проверены уже в тот момент, когда я щелкаю их снаружи (например, с помощью onblur), но я не знаю, какой метод мне нужно вызвать в свойстве onblur, чтобы выполнить валидатор этого элемента? Код, который у меня есть на данный момент:

<h:form>
  <h:outputText value="#{msgs.name}"/><br/>
  <h:inputText id="name" value="#{user.name}" label="#{msgs.name}" required="true" requiredMessage="#{msgs.name_required}"/>
 <h:message for="name" styleClass="error_single_message"/>
  <br/><br/>

  <h:outputText value="#{msgs.password}"/><br/>
  <h:inputText id="password" value="#{user.password}" label="#{msgs.password}" required="true" requiredMessage="#{msgs.password_required}"/>
  <h:message for="password" styleClass="error_single_message"/>
  <br/><br/>

  <div class="error_overview_messages">Overview errors
  <h:messages showDetail="#{true}" showSummary="#{false}"/>
  </div><br/>

  <h:commandButton value="Log_on" action="logged_in"/>
</h:form>

Ответы [ 2 ]

0 голосов
/ 22 апреля 2011

Если вы используете JSF2, вы можете выполнить то, что ищете, добавив Richfaces в свою сборку и используя проверку на стороне клиента Richfaces:

Проверка на стороне клиента Richfaces

Это отличная новая функция в их выпуске v4, которая компилирует стандартные валидаторы jsf и валидацию bean-компонента JSR-303 в javascript, который может выполняться на стороне клиента.Вы можете активировать валидацию любого стандартного события javascript (размытие, щелчок, нажатие клавиши).

0 голосов
/ 21 апреля 2011

Проверка JSF происходит на стороне сервера, поэтому вам, по сути, нужно будет запустить отправку, чтобы активировать код на стороне сервера.

Если вас это не интересует, вам нужно активировать какой-то конкретный Java-скрипт.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...