Sapui5 如何从StandardListItem获取所选项目
我正在构建一个主细节应用程序。我用它列出主对象。我希望选定的主对象显示在详细信息页面上Sapui5 如何从StandardListItem获取所选项目,sapui5,Sapui5,我正在构建一个主细节应用程序。我用它列出主对象。我希望选定的主对象显示在详细信息页面上 <List id="lstRequest" headerText="Custom Content" selected="true" items="{ path: '/Requests', parameters: { expand: 'RequestTypeDetails' } }"> <StandardListItem titl
<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>
bindingobject
在onSelectApprovation中是未定义的
请执行以下操作:
var oItem = oEvent.getParameter("listItem") || oEvent.getSource());
var oCtx = oItem.getBindingContext();
var requestCode = oCtx.getProperty("RequestCode");
顺便说一下:sap.m.List没有布尔类型的“selected”属性。但是,它有一个select事件,也可以用来代替StandardListItem的press事件…在将json模型设置为如下列表时给出逻辑名称
this.getView().byId("lstRequest").setModel(oListJson,"List");
oListJson将是您的数据数组
现在使用代码访问onSelectApprovation函数中的列表对象,如下所示
onSelectApprovation : function(oEvent){
var bindingobject = oEvent.getSource().getBindingContext("List");
}
我想得到整个物体。我可以使用oCtx.getObject()。顺便说一句,选择“仅当使用“模式”属性时事件才起作用”。此属性用于将循环checbox添加到UI。我更喜欢使用press-eventYes,getObject()是您需要的。我也会回答,但是,你删除了你的评论…;-)是的,我已经删除了,因为我已经找到了答案。无论如何,谢谢!
onSelectApprovation : function(oEvent){
var bindingobject = oEvent.getSource().getBindingContext("List");
}