Sapui5 如何获取已按下列表项的详细信息?
我构建了一个表,如下所示: 以及守则:Sapui5 如何获取已按下列表项的详细信息?,sapui5,Sapui5,我构建了一个表,如下所示: 以及守则: <ColumnListItem type="Detail" detailPress="onDetailPress"> <cells> <ObjectIdentifier title="{Customer>CustomerID}" text="{Customer>CompanyName}"/> <Text text="{Customer>ContactNam
<ColumnListItem type="Detail" detailPress="onDetailPress">
<cells>
<ObjectIdentifier title="{Customer>CustomerID}" text="{Customer>CompanyName}"/>
<Text text="{Customer>ContactName}"/>
<Text text="{Customer>Address}"/>
<Text text="{Customer>City}"/>
</cells>
</ColumnListItem>
事件对象上的返回类型getParameters()
方法调用是什么?报告没有提到任何类型
如何使用oEvent获取已按下列表项的客户详细信息
调试器说:
oEvent是事件对象。getParameters()返回一个JSON对象。因此,类型是如上所述的对象 在本例中,它是一个空对象,但还有其他事件返回对象内部的参数,例如 如果要获取customerID,只需从单击的行中获取模型路径并从模型中获取属性。下面是代码片段:
onDetailPress: function(oEvent){
var oColumnListItem = oEvent.getSource();
var sPath = oColumnListItem.getBindingContext("Customer").getPath();
var sCustomerIDPath = sPath + "/CustomerID";
var oModel = oColumnListItem.getModel("Customer")
console.log(oModel.getProperty(sCustomerIDPath));
}
您可以像这样获得绑定到行的对象
onDetailPress: function(oEvent) {
var oObject = oEvent.getSource().getBindingContext("Customer").getObject();
// from this object, you can do oObject.CustomerID
}
您想知道所单击项目的类型(详细信息)吗?您希望在这里实现什么?我正在尝试获取单击单元格的
CustomerID
值。
onDetailPress: function(oEvent) {
var oObject = oEvent.getSource().getBindingContext("Customer").getObject();
// from this object, you can do oObject.CustomerID
}