Как вызвать метод bean из функции javascript, используя a4j: ajax или a4j: actionListener? - PullRequest
2 голосов
/ 20 июля 2011

Я использую JSF, richfaces 4 вещи, и я хочу вызвать метод bean, когда триггер функции JavaScript.

1 Ответ

6 голосов
/ 20 июля 2011

Вы можете использовать <a4j:jsFunction>, что позволяет выполнять запросы Ajax для вызова метода bean-компонента непосредственно из кода JavaScript, и ответ может быть возвращен в формате JSON для использования в клиентских вызовах JavaScript..

Обратите внимание, что <a4j:jsFunction> обязательно должно быть внутри <h:form>.Например, вы определяете a4j: jsFunction, например:

<h:form> 
    <a4j:jsFunction name="myJsFunction"  action="#{bean.someAction}" reRender="xxxxx"/>
 </h:form>

Функция javascript, имя которой называется myJsFunction(), создается и при вызове вызывает someAction () для компонента.

Например, в вашей функции JavaScript:

<script type="text/javascript">
function yourJavaScriptFuntion() {
    ..............;
    myJsFunction();  //bean.someAction() will invoke here
    ..............;
}
...