Как бэкэнд-функция вызывается при поиске? - PullRequest
0 голосов
/ 20 ноября 2018

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

Ниже приведен код JSF, в котором реализован поисковый компонент.

    <h:panelGroup id="searchBarWrapper" styleClass="search-bar#{ciUser.patient ? ' search-no-filters' : ''}" layout="block">
        <h:inputText id="contentTextSearch" styleClass="form-control search" pt:data-loader="false"
                     value="#{contentView.freeText}"
                     pt:placeholder="#{uiBundle['content.search.placeholder']}"
                     pt:data-change-event="keydown:13,blur" pt:data-click-success=".open-level-one">
            <f:ajax event="change"
                    render="collaborative-#{contentView.side}:searchBarWrapper collaborative-#{contentView.side}:levelBack1 collaborative-#{contentView.side}:ColumnWideWrapper collaborative-#{contentView.side}:#{contentView.side}ColumnNarrow content-preview-component:content-preview"
                    onevent="JSF.ajaxOnEvent"/>
        </h:inputText>
        <a href="#search" class="search-submit">
            <i class="ico-search"></i>
        </a>
        <h:commandLink styleClass="btn btn-icon reset" rendered="#{not empty contentSession.freeText}"
                       pt:data-loader="false">
            <i class="ico-cross-circle reset"></i>
            <f:ajax listener="#{contentView.setFreeText(null)}"
                    render="collaborative-#{contentView.side}:searchBarWrapper collaborative-#{contentView.side}:#{contentView.side}ColumnWide collaborative-#{contentView.side}:#{contentView.side}ColumnNarrow"
                    onevent="JSF.ajaxOnEvent"/>
        </h:commandLink>
    </h:panelGroup>

JSF.ajaxOnEvent Функция JS указана ниже.

ajaxOnEvent: function (e) {
    if (e.status === 'begin') {
        $(e.source).addClass('processing');
    }
    JSF.handleClick(e);
    JSF.iFrameLoad(e);
    if (e.status === 'success') {
        $(e.source).removeClass('processing');
        CI.reInit(e);
    }
}

Дайте мне знать, требуется ли какая-либо другая информация для определения потока функций поиска. Я буду рад поделиться этим.

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