【问题标题】:ADF forEach inside ul unexpected behaviourADF forEach 内部 ul 意外行为
【发布时间】:2018-07-08 20:41:58
【问题描述】:

我正在尝试在 ADF 页面中生成动态无序列表。

使用的代码是:

<ul class="navbar-nav ml-auto">
    <af:forEach var="menu" varStatus="vs"
        items="#
        {navigationContext.defaultNavigationModel.listModel['startNode=/, 
        includeStartNode=false']}">
            <li class="nav-item">
                <af:goLink id="pt_gl3" text="#{menu.title}"
                    destination="#{menu.goLinkPrettyUrl}"
                    targetFrame="#{menu.attributes['Target']}" />
            </li>
    </af:forEach>
</ul>

所以,预期的结果是:

<ul class="navbar-nav ml-auto">
   <li class="nav-item">...</li>
</ul>

实际结果是:

<ul class="navbar-nav ml-auto"></ul>
<div>
    <li class="nav-item"></li>
    <div>
        <a dir="rtl" data-afr-tlen="4" id="T:pt_gl3" class="xf6" data-afr-fcs="true" href="/webcenter/portal/Test/pages_home" target="">Home</a>
    </div>
    <div></div>
</div>
<div>
    <li class="nav-item"></li>
    <div>
        <a dir="rtl" data-afr-tlen="8" id="T:j_idt131" class="xf6" data-afr-fcs="true" href="/webcenter/portal/Test/pages_newpage" target="">New Page</a>
    </div>
    <div></div>
</div>

有人知道为什么它会在列表项之前生成 div 吗?

【问题讨论】:

  • 它不是在列表项之前生成 div,而是在列表项周围生成它们。当您不使用 ul 而是使用其他标签时,您是否检查过它是否不会发生?
  • 你做错了什么。 Faces 标签和 html 不应该混淆。实际上你根本不应该在 jsf 页面中有 html 标签

标签: jsp jsf oracle-adf


【解决方案1】:

尝试使用

<ui:repeat xmlns:ui="http://java.sun.com/jsf/facelets" value="#
    {navigationContext.defaultNavigationModel.listModel['startNode=/, 
    includeStartNode=false']}"... >

而不是 af:forEach,看看你是否注意到任何不同。

【讨论】:

    猜你喜欢
    • 2017-05-19
    • 2018-12-01
    • 1970-01-01
    • 2011-08-25
    • 1970-01-01
    • 1970-01-01
    • 2011-08-06
    • 2013-01-28
    • 2013-05-03
    相关资源
    最近更新 更多