javascript - 在 icontab 中加载动态内容

标签 javascript sapui5

我有一个带有 ui5 的 IconTabBar,每个选项卡都有其内容作为 View ,并从 Json 数据集加载内容。

我需要重定向到特定选项卡,我通过设置 selectedKey 来做到这一点。但是内容不加载。该选项卡被选中,但显示的内容来自上一个选项卡。我想可能与 DOM 事件有关。

我的用例

最初所有选项卡都是隐藏的。在一个事件中,我设置仅 iContact Tab 可见(通过设置visible=true),然后在另一个事件(按下按钮时)我需要重定向到 iData Tab。

我的 xml View

 <IconTabBar selectedKey="iContact" id="idMenu" expandable="false">
     <items>
        <IconTabFilter text="Data" id="iData" visible="false">
            <mvc:XMLView viewName="APP.view.TabData"/>
        </IconTabFilter>
        <IconTabFilter text="Contact" id="iContact" visible="false">
            <mvc:XMLView viewName="APP.view.TabContact"/>
        </IconTabFilter>
     </items>
 </IconTabBar>

在我的 Controller 中,按下按钮来加载 iData 选项卡。 我将选项卡设置为可见,该选项卡被标记为已选择,但显示的内容来自 icontact 选项卡。

 sap.ui.getCore().getElementById('idMenu').setSelectedKey("iData");

谢谢

最佳答案

您应该使用 key 属性,而不是 IconTabFilter 中的 id,如下所示:

<IconTabBar selectedKey="iContact" id="idMenu" expandable="false">
     <items>
        <IconTabFilter text="Data" key="iData" visible="false">
            <mvc:XMLView viewName="APP.view.TabData"/>
        </IconTabFilter>
        <IconTabFilter text="Contact" key="iContact" visible="false">
            <mvc:XMLView viewName="APP.view.TabContact"/>
        </IconTabFilter>
     </items>
 </IconTabBar>

IconTabFilter 是 sap.ui.core.Item 的扩展并且它有 key 属性作为标识符。

关于javascript - 在 icontab 中加载动态内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48673167/

相关文章:

javascript - Chrome 工作区源代码自动完成无法正常工作

javascript - jquery用短代码选择几个元素

javascript - 如何找到加载缓慢的 SAPUI5 应用程序的加载瓶颈

OData 服务返回 404

javascript - SAPUI5 TreeTable 渲染问题

javascript - 监听元素禁用事件

javascript - 使用 CSS 或 JS 在溢出的 div 中标记最后一个可见的 child

javascript - 使用lodash javascript全连接二维数组

javascript - SAPUI5 甘特图导出为 PDF 或打印所有图表

data-binding - Sapui5:当 oData 服务具有 $expand 参数时如何将其绑定(bind)到 SAPUI5 表