在 sapui5 片段的 xml 文件中使用 jquery

Posted

技术标签:

【中文标题】在 sapui5 片段的 xml 文件中使用 jquery【英文标题】:Using jquery in xml file in sapui5 fragment 【发布时间】:2017-08-30 12:02:15 【问题描述】:

我的应用程序有一个简单的问题,我有一个空白背景的 Image 属性,如果我点击它应该将类添加到我的属性中 我的控制器在 view.xml 文档中看不到属性的类/ID。 有没有办法和他们交流?

在我看来片段:

<Page showHeader="false">
            <content>
                <tnt:ToolHeader>
                    <Button icon="sap-icon://nav-back" press="onNavBack" />
                </tnt:ToolHeader>
                <Image id="imageOffice" class="officeImage"   press="onReservePress"/>
            </content>
        </Page>

我的控制器:

onReservePress: function() 
        console.log("Working"); //its ok

        $("#imageOffice").addClass("greenImage"); //its not
    

css 文件:

.greenImage 
background-color: rgb(174, 243, 231);

【问题讨论】:

【参考方案1】:

你可以使用原生函数来访问你的元素

onReservePress: function() 
    console.log("Working"); //its ok

    this.getView().byId('imageOffice').addStyleClass("greenImage");

这仍然会使用 jquery :) 我认为您可以通过使用事件源来优化这一点(并防止使用 ID):

onReservePress: function(oEvent) 
    console.log("Working"); //its ok

    oEvent.getSource().addStyleClass("greenImage");

【讨论】:

以上是关于在 sapui5 片段的 xml 文件中使用 jquery的主要内容,如果未能解决你的问题,请参考以下文章

SAPUI5 如何在语义详细视图中插入片段或 xmlview

SAPUI5绑定JSON模型来控制

SAPUI5 XML 视图文本不可见

SAPUI5 列表绑定与 XML 视图中的过滤数据

SAPUI5 将数组行索引绑定到 xml 视图中的数组行数据

SAPUI5:xml 视图中 html 标记中的 i18n 属性内容