Обновление c: foreach / ui: повторить с помощью JavaScript - PullRequest
0 голосов
/ 15 декабря 2018

Попытка обновить c: foreach с помощью JavaScript.даже если представление обновляется, новое значение, которое вставляется в БД, не отображается в представлении.Я также пытался с ui: repeat и a: repeat то же самое.Любые изменения, которые мне нужно сделать.

<div id="spModOutput">
    <ui:repeat value="#{ActionClass.listMethod()}" var="scenarioVar">
        "#{scenarioVar.scenarioId}"
    </ui:repeat>
</div>

<script>
    $('#newSpScenarioId').on('click', function() {
        document.getElementById('scenarioFormForAction:createNewScenarioSp').click();
    });
</script>

<script>
    function afterCompleteLoadTree() {
        alert("ROW CREATED IN DB  !!!");
        $('#spModOutput').fadeOut(100);
        $('#spModOutput').fadeIn(100);
        $('#spModOutput').jqxTree("refresh");
    }
</script>

<h:form id="scenarioFormForAction">
    <a4j:commandLink id="createNewScenarioSp" style="visibility: hidden;" 
        action="#{ActionClass.createNewRow()}" 
        oncomplete="afterCompleteLoadTree()">
    </a4j:commandLink>
</h:form>

1 Ответ

0 голосов
/ 15 декабря 2018

Я надеюсь, что эта работа, так как richfaces устарела, я не могу вспомнить точное решение.

<script>
$('#newSpScenarioId').on('click', function() {
    document.getElementById('scenarioFormForAction:createNewScenarioSp').click();
});
</script>

<script>
    function afterCompleteLoadTree() {
        alert("ROW CREATED IN DB  !!!");
        $('#spModOutput').fadeOut(100);
        $('#spModOutput').fadeIn(100);
        $('#spModOutput').jqxTree("refresh");
    }
</script>

<h:form id="scenarioFormForAction">
    //put tree in a form
    <a4j:outputPanel id="msg"> //use outputPanel
    <div id="spModOutput">
        <ui:repeat value="#{ActionClass.listMethod()}" var="scenarioVar">
            "#{scenarioVar.scenarioId}"
        </ui:repeat>
    </div>
    </a4j:outputPanel>
    <a4j:commandLink id="createNewScenarioSp" style="visibility: hidden;" 
        action="#{ActionClass.createNewRow()}" 
        oncomplete="afterCompleteLoadTree()"
        reRender="msg"> //use reRender attr
    </a4j:commandLink>
</h:form>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...