2010-08-03 4 views
0

При выборе элемента DIV я беру значение выбранного скрытого элемента DIV и передаю его в форму со скрытым элементом в ней. Затем эту форму отправляют. Ниже приведены фрагменты моего кода.JSF valueChangeListener не запускается при отправке формы

Значение скрытого ввода внутри формы правильно установлен по выбору DIV и тому форма также представлены но valueChangeListener не выпустили.

Каждый намек приветствуется!

-choesang

Форма со скрытым элементом:

<a4j:form id="currentForumPost" ajaxSubmit="true" 
      onsubmit="console.log('currentForumPost is submitted'); 
      console.log(jQuery('#currentForumPost:currentPostId').val())" > 
     <h:inputHidden id="currentPostId" 
     valueChangeListener="#{forumController.changeListenerSelectedForumPost}" 
     immediate="true"/> 
</a4j:form> 

DIV элемента:

<div class="block ui-accordion ui-widget ui-helper-reset" 
    onclick="var x = jQuery(this).find('.hiddenInputText').val();   
    jQuery(this).closest('#RightPane').find('#currentForumPost:currentPostId').val(x);  
    jQuery(this).closest('#RightPane').find('#currentForumPost').submit();"> 
    <h:inputText value="#{post.uuid}" styleClass="hiddenInputText"/> 
         ...... 
</div> 

Java

public void changeListenerSelectedForumPost(final ValueChangeEvent event) { 
setSelectedForumPost(event.getComponent().getAttributes().get("value").toString()); 

}

ответ

1

Похоже, что вы не имеете атрибут на inputText valueChangeListener. Вам нужен этот атрибут, поэтому JSF знает, какой слушатель должен вызывать. Предполагая, что ваш бин называется «боб», вот пример:

<h:inputText value="#{post.uuid}" valueChangeListener="#{bean.changeListenerSelectedForumPost}" styleClass="hiddenInputText" /> 
+0

Привет Колин, Спасибо за ответ на мой пост. Часть моего кода не была видна, извините. У меня есть значениеChangeListener, а не точно для элемента , но для . Обратите внимание: - это элемент, отправленный на сервер. – tchoesang

+0

Хорошо. Теперь ничего плохого не видно. Работает ли он, если вы меняете h: inputHidden на h: inputText? –

Смежные вопросы