在点击之后呈现组件



我想在点击submit按钮后呈现数据表。

<p:commandButton value="Submit" action="#{MenuBean.getValues}"
                        type="submit" partialSubmit="true" process="statemenu,dist,@this"
                        style='font-family: font-family : Baskerville, "Baskerville Old Face",
        "Hoefler Text", Garamond, "Times New Roman", serif;
    font-size: 14px; font-weight: normal'
                        update=":form:table,:form:filter"></p:commandButton>

 <p:dataTable id="table" value="#{DataTable.dataTable}" var="table"
                lazy="true" rowKey="#{table.sheet_no}" selectionMode="single"
                selection="#{DataTable.selectedSheet}" scrollable="true"
                scrollHeight="150" rendered="#{DataTable.loaded}"
                style="widht:400px ; margin-left:200px;margin-right:25px">
</p:dataTable>
<h:panelGrid id="filter" columns="1" cellpadding="10" cellspacing="2"
            rendered="#{DataTable.filter}"
            style="position:absolute;bottom:15px;right:150px;border: 1px solid #1f497d;box-shadow: 10px 10px 25px #888888;
            height:auto;width:600px;Text-align:center;">
            <p:outputLabel value="Filter your search to get result."></p:outputLabel>
        </h:panelGrid>

这是后台bean

public String getValues() {
    DataTable.isLoaded = true;
    DataTable.Filter = false;
    System.out.println("getting the values");
    System.out.println(DataTable.isLoaded);
    System.out.println(DataTable.Filter);
    System.out.println(state);
    System.out.println(district);
    return "hello";

数据表。isLoaded = true;数据表。Filter = false;是可访问的静态布尔值。当isLoaded变为true时,我想显示表格并隐藏过滤面板。怎么做??

<p:dataTable id="disptable" value="#{DataTable.dataTable}"
            var="table" lazy="true" rowKey="#{table.sheet_no}"
            selectionMode="single" selection="#{DataTable.selectedSheet}"
            scrollable="true" scrollHeight="150" rendered="#{DataTable.loaded}"
            style="widht:auto ; margin-left:300px;margin-right:30px"
            widgetVar="tabl">
            <p:column headerText="Sheet Number" style="width:25%">
                <h:outputLabel value="#{table.sheet_no}"></h:outputLabel>
            </p:column>
            <p:column headerText="State" style="width:25%">
                <h:outputLabel value="#{table.state_cd}"></h:outputLabel>
            </p:column>
            <p:column headerText="District" style="width:25%">
                <h:outputLabel value="#{table.district_cd}"></h:outputLabel>
            </p:column>
            <p:column headerText="Details" style="width:25%">
                <h:commandLink title="Complete Details" value="Complete Details"></h:commandLink>
            </p:column>
            <f:facet name="footer">
                <p:commandButton id="selectButton" icon="imagesshow.png"
                    update=":form:disp" oncomplete="PF('Dialog').show()"
                    process="@this,table" style="height:25px;"
                    action="#{tabs.addTabs}" ajax="true" />
                <!--    Count of Items Selected :  -->
            </f:facet>
        </p:dataTable>

你的组件似乎是有点超载的属性似乎没有必要,例如partialSubmit, process, selection, scrollable等。这应该不是实际的问题,但是限制错误的可能性可以帮助我们更接近解决方案。

一些要点:

  • 这三个元素在同一个表单中吗?你正在使用:form:tableform:filter在你的更新,这并不清楚你正在使用什么形式

  • 是getValues()给你在控制台的任何输出或它甚至没有调用?你也不需要返回一个String,一个void方法就可以完成这项工作

  • 尝试使用#{menuBean。

  • 尝试更新@form,而不是特定元素

相关内容

  • 没有找到相关文章

最新更新