繁体   English   中英

f:ajax不会在p:layout中呈现p:dataTable

[英]f:ajax does not render p:dataTable inside p:layout

我有一个dataTable,可以通过单击删除图像来删除行。 在此处输入图片说明 当我单击它时,数据被删除,但表未呈现

这是我的代码:

<p:fieldset id="knowledgeBases" legend="#{appMsg.knowledge_base}">
    <p:layout style="width:auto; height:800px;">
    <p:layoutUnit position="center" id="kbCenter">
        <p:dataTable id="kbDataTable" var="kb" value="#{KnowledgeBaseBean.kbList}" sortMode="multiple"
                     rows="10" paginator="true" rowsPerPageTemplate="10,15,20"
                     paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}">
            <p:ajax event="filter" listener="#{KnowledgeBaseBean.onFilter}" update = ":formId:kbDataTable"/>

            <p:column style="width:2%">
                <h:commandLink title="#{appMsg.common_delete}" id="deleteImage" onclick="return confirm('#{appMsg.del_warn_current_record}')" >
                    <h:graphicImage name="images/new_design/image13.png" style="width:15px;height:15px;text-align: center" />
                        <f:ajax event="click" execute="@this" render="@form"
                                listener="#{KnowledgeBaseBean.deleteListItem}"/>
                </h:commandLink>
            </p:column>                 
            ...

如果您使用全页面布局,则问题可能是您在layoutUnit周围有一个表单。 反之亦然。 从Primefaces 4.0用户指南中。 262:

使用表单和完整页面布局时,请避免使用包含layoutunits的表单,因为生成的dom可能不相同。 所以跟随是无效的

   <p:layout fullPage="true">
    <h:form>
           <p:layoutUnit position="west" size="100">
                 h:outputText value="Left Pane" />
           </p:layoutUnit>
           <p:layoutUnit position="center">
                 <h:outputText value="Right Pane" />
           </p:layoutUnit>
    </h:form>

A layout unit must have it’s own form instead, also avoid trying to update layout units because of same reason, update it’s content instead.

在这里进一步解释。

问题出在我的豆子里。 当我从数据库中删除对象时,我忘记从列表中删除该对象。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM