Как обновить ah: inputHidden с помощью p: commandButton? - PullRequest
2 голосов
/ 16 декабря 2011

Я написал запрос ajax для любых данных. Но данные не работают с h: inputHidden. Я думаю, что это ошибка Primefaces. Но я не знаю, как получить данные сейчас.

код:

<h:inputHidden id="buttonData" value="#{buttonDataBean.buttonData}" />
...
<p:commandButton id="getData" action="#{buttonAction.getButtonData}" update="buttonData" />

Когда я нажимаю commandButton, значение не работает. Но если я использую h: outputText, это сработало.

Мое требование: Прежде чем нажать на кнопку command, я должен динамически создавать любые HTML-кнопки. Я хочу нажать на кнопку command и обновить имя и положение кнопок HTML. Так что я должен получить любые данные и обновить кнопки HTML с помощью Javascript. как я мог с этим поделать?

Если я хочу использовать JavaScript для получения данных ajax, как это сделать. Я вижу документ и нахожу два метода: jsf.ajax.request () и Primefaces.ajax.AjaxRequest (). Но я не знаю, как использовать два метода. например: Primefaces.ajax.AjaxRequest ("test.xhtml" ,,). В "test.xhtml" как запросить метод testMethod для TestAction?

Ответы [ 3 ]

0 голосов
/ 16 декабря 2011

Если ваша проблема не решается с помощью простого лица ajax, вы можете использовать нативный ajax, предоставленный jsf, посмотрите на него. Это работает, я сделал много таких вещей с ним.

0 голосов
/ 16 декабря 2011

Вместо использования скрытого ввода вы можете воспользоваться JSF и использовать f:param или f:attribute.

Прочитайте эту действительно прекрасную статью под брендом BalusC: http://balusc.blogspot.com/2006/06/communication-in-jsf.html.

0 голосов
/ 16 декабря 2011

используйте firebug для проверки HTML-кода. Вы можете увидеть новое значение

<h:form id="form">
  <h:inputHidden  id="buttonData" value="#{buttonDataBean.buttonData}" />
  <p:commandButton id="getData" value="button"
                   action="#{buttonDataBean.buttonAction}" update="buttonData" />
</h:form>
...