primefaces向导选项卡更新数据表

时间:2017-03-21 22:16:23

标签: ajax jsf primefaces tabs wizard

我有一个带有prime faces向导的页面有3个选项卡,在我的第三个选项卡中有两个数据表,第一个是数据库中的数据列表,当我双击时我有一个Ajax在一行上,它调用一个方法将所选记录添加到同一数据库中的不同表中,并且它成功插入,我可以在数据库表中看到它,但我希望在我的页面中的第二个数据表中查看一旦它被添加(第二个数据表列出了我的数据库中的数据)我已经尝试了所有提到的Ajax更新的想法,但它们没有为我工作!谁能看到我在做什么?

这是我的向导:

<html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:p="http://primefaces.org/ui"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:h="http://java.sun.com/jsf/html">
<ui:composition template="/WEB-INF/layouts/exam_createor.xhtml">
    <ui:define name="content">
        <h:form id="frmSemesterExam">
            <p:wizard id="tabsSemesterExamId" widgetVar="wiz"
                flowListener="#{mbCoursesExamBank.onFlowProcess}" showNavBar="false"
                showStepStatus="true">
                <p:tab title="#{msg2.get('semester_exam')}" id="tabExamId">
                    <ui:include src="/pages/instructors/semester_course_exam.xhtml" />
                </p:tab>
                <p:tab title="#{msg2.get('forms')}" id="tabFormsId">
                    <ui:include src="/pages/instructors/exam_forms.xhtml" />
                </p:tab>
                <p:tab title="#{msg2.get('questions_in_this_form')}" id="tabQuestionsForm">
                    <ui:include src="/pages/instructors/questions_form.xhtml" />
                </p:tab>
            </p:wizard>
        </h:form>
    </ui:define>
</ui:composition>
</html>

这是我的第三个包含dataTables的标签:

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:p="http://primefaces.org/ui"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:c="http://java.sun.com/jsp/jstl/core"
    xmlns:o="http://omnifaces.org/ui">
<p:panelGrid columns="6" id="pnlfourmData1">
    <f:facet name="header">
        <div align="center">#{msg2.get('exam_forms')}</div>
    </f:facet>
</p:panelGrid>

<p:dataTable id="tblAllQuestions" value="#{mbInstructor.fullList}"
    var="asEmp" selectionMode="single"
    selection="#{mbInstructor.currentExamQuestion}" rowKey="#{asEmp.id}"
    rowIndexVar="rowIndex">
    <p:ajax event="rowDblselect"
        update="@parent:tblAllQuestions,frmSemesterExam:tabQuestionsForm"
        process="@this" listener="#{mbInstructor.submitForm()}" />
    <p:column headerText="#" width="8%">
                        #{rowIndex+1}
                    </p:column>
    <p:column headerText="#{msg2.get('Questions')}">
                        #{asEmp.questionTxt}
                    </p:column>
</p:dataTable>



<p:dataTable id="tblAllQuestions2" value="#{mbInstructor.formsQuestion}"
    var="as" selectionMode="single"
    selection="#{mbInstructor.currentExamQuestion}" rowKey="#{as.id}"
    rowIndexVar="rowIndex">
    <p:ajax event="rowDblselect" update="@this" process="@this" />
    <p:column headerText="#" width="8%">
                        #{rowIndex+1}
                    </p:column>
    <p:column headerText="#{msg2.get('Question in this form')}">
                        #{as.question.questionTxt}
                    </p:column>
</p:dataTable>

</html>

请注意,我已尝试将我的dataTable放入表单中并更新它们但没有帮助!

0 个答案:

没有答案