我正在构建一个主要细节应用程序。我正在使用sap.m.StandardListItem列出主对象。我希望选定的主对象出现在详细信息页面上。
<List id="lstRequest" headerText="Custom Content" selected="true" items="{
path: '/Requests',
parameters: {
expand: 'RequestTypeDetails'
}
}">
<StandardListItem
title="{RequestTypeDetails/RequestType2} - {RequestCode}"
description="{TotalAdvance}"
icon="sap-icon://request"
iconDensityAware="false"
iconInset="false"
type="Navigation"
press="onSelectApprovation"
/>
</List>
我正在关注here的指南,但在我的情况下不起作用。
var source = event.getSource();
var bindingobject = event.getBindingContext("Requests");
bindingobject
是undefined
。
答案 0 :(得分:1)
在onSelectApprovation内部执行以下操作:
var oItem = oEvent.getParameter("listItem") || oEvent.getSource());
var oCtx = oItem.getBindingContext();
var requestCode = oCtx.getProperty("RequestCode");
顺便说一下:sap.m.List没有一个名为“selected”的boolean类型的属性。但是,它有一个select事件,也可以使用而不是使用StandardListItem的按下事件......
答案 1 :(得分:0)
在将json模型设置为如下所示的列表时给出逻辑名称。
this.getView().byId("lstRequest").setModel(oListJson,"List");
oListJson将是您的数据数组。
现在使用您的代码访问onSelectApprovation功能中的列表对象,如下所示
onSelectApprovation : function(oEvent){
var bindingobject = oEvent.getSource().getBindingContext("List");
}