Bezdepbonusu7Программирование: статьи и ответы

Вопрос

Передача параметра в a4j: function

Автор вопроса: GadolinОтветов: 1

Как я могу передать параметр в a4j: jsFunction из javascript, я хочу вызвать categoryChanged и все, что я там поместил - даже явная строка, параметр не отображается на стороне компонента.

Вот js-код:

$(function() {
    $( "#resizable" ).resizable();
    $( "#selectable" ).selectable({stop: function(event, ui) {
        $( ".ui-selected", this ).each(function() {
            var index = $( "#selectable li" ).index( this );
            categoryChanged("Test String");
            categoryChanged(this);
            categoryChanged(ui.id);
            categoryChanged($( "#selectable li" ).value(this));
        });
        // ajax call to render the content
    }});
    $("#menu").buttonset();

});

и определение функции a4j:

<a4j:jsFunction name="categoryChanged"
        action="#{appexplorerbean.categoryChanged}" limitToList="true"
        oncomplete="" reRender="appexplrtable">
<a4j:actionparam name="newCategory" />
</a4j:jsFunction>

javascriptjsfajax4jsf

Ответы

Ответ 1 · рейтинг 5 · Ununoctium

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

<a4j:jsFunction name="categoryChanged"
        action="#{appexplorerbean.categoryChanged(newCategory)}" limitToList="true"
        oncomplete="" reRender="appexplrtable">
    <a4j:actionparam name="newCategory" assignTo="#{newCategory} />
</a4j:jsFunction>

или напрямую установить значение.

<a4j:jsFunction name="categoryChanged"
            action="#{appexplorerbean.categoryChanged}" limitToList="true"
            oncomplete="" reRender="appexplrtable">
    <a4j:actionparam name="newCategory" assignTo="#{appexplorerbean.newCategory} />
</a4j:jsFunction>

Надеюсь, это все еще помогает

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы