首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >rerender rich:tab contnet

rerender rich:tab contnet
EN

Stack Overflow用户
提问于 2011-01-25 10:31:30
回答 1查看 938关注 0票数 0

我已经尝试为我的application.For提供web2.0支持,我想提供rich: dynamically.User面板,它可以包含许多选项卡,可以添加和删除我使用的tabs.For,我使用c:foreach表示rich:tab.The列表选项卡包含列表的rich:panel包含的details.The面板只包含简短的content.By点击阅读更多链接。用户可以读取完整的content.For,我需要重新呈现包含rich:panel.But列表的a4j:outputpanel我已经使用了c:freach来呈现this.Because列表我无法获得包含列表tabs.So的a4j:outputpanel的确切id a4j:outputpanel doesnot allowed the el expressions.My代码片段如下,

代码语言:javascript
复制
<c:forEach items="#{Home.tabList}" var="homeBean" varStatus="status">
<el:define value="${status.count}" var="rowIndex"/>
 <rich:tab id="homeTab" label="#{homeBean.header}"
                        name="#{homeBean.header}" switchType="client"
                        onlabelclick="coinSliderFunction('coin-slider#{rowIndex}')">
<a4j:outputPanel id="subHeaderPanel">
<h:panelGrid columns="3" cellpadding="3" cellspacing="3"
 id="detailGrid"                                                                   rendered="#{!Home.subHeaderDetailedContentPanelRendered}"
                                                                   columnClasses="layoutContentColumnClass,
                                                                     layoutContentColumnClass,layoutContentColumnClass">

 <%--SubHeader List--%>
 <c:forEach items="#{homeBean.subHeaderBeanList}" var="subHeaderBean" varStatus="subHeaderStatus">
  <rich:panel header="#{subHeaderBean.header}" id="subHeaderPanels">
 <h:outputText id="outputText" value="#{subHeaderBean.briefContent}" escape="false"/>
  <a4j:commandLink value="Read More" id="readMoreLink" 
action="#{Home.navigationHandler}" reRender="subHeaderPanel">    
 <a4j:actionparam name="headerActionParam" value="#{homeBean.header}" assignTo="#{Home.headerName}"/>
<a4j:actionparam name="subHeaderActionParam" value="#{subHeaderBean.header}" assignTo="#{Home.subHeaderName}"/>

</a4j:commandLink>
</rich:panel>
 </c:forEach>
 </h:panelGrid>
  <%--SubHeader Detail Panel--%>
  <h:panelGrid rendered="#{Home.subHeaderDetailedContentPanelRendered}" id="subHeaderGrid">
  <h:outputText id="detailedContent" value="#{Home.subHeaderDetailedContent}" escape="false"/>
 <f:verbatim><center></f:verbatim>                    
 <a4j:commandLink id="backLinks" value="#{platform.backButtonLabel}"
  action="#{Home.backButtonAction}"
                                                                                reRender="leftOutputPanel"/>
 <f:verbatim></center></f:verbatim>
                                               </h:panelGrid>                                                            
                                                        </a4j:outputPanel>                                                       
</rich:tab>
</c:forEach>   

我怎样才能做到这一点?请帮帮我。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-01-25 16:27:41

由于无法确定在forEach循环中呈现的tabe面板的id,因此必须重新呈现panelGrid detailGrid。注意将选项卡上显示的所有值缓存到托管bean中。如果这样做,则不需要调用数据库,并且所有选项卡的重新呈现都很快。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4789442

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档