我创建了下拉菜单SAPUI5,但是当我按下菜单列表时找不到详细信息。 etc:当我点击时,显示JSON对象的名称。
json:
dropdownMenu: {
kepesertaan:[
{
name: "Menu1",
icon: "sap-icon://crop",
sub: [
{
name: "Submenu1-1",
icon: "sap-icon://create-session"
},
{
name: "Submenu1-2",
icon: "sap-icon://create-form"
}
]
},
{
name: "Menu2",
icon: "sap-icon://detail-view",
sub: [
{
name: "Submenu2-1",
icon: "sap-icon://add-activity"
},
{
name: "Submenu2-2",
icon: "sap-icon://action"
}
]
},
{
name: "Menu3",
icon: "sap-icon://delete",
sub: [
{
name: "Submenu3-1",
icon: "sap-icon://add-favorite"
},
{
name: "Submenu3-2",
icon: "sap-icon://add-document"
}
]
}
]
}
XML片段:
<core:FragmentDefinition
xmlns="sap.m"
xmlns:core="sap.ui.core"
xmlns:u="sap.ui.unified">
<u:Menu items="{kepesertaanmodel>/}" id="menuEventingKepesertaan"
itemSelect="handleMenuItemPressKepesertaan">
<u:MenuItem
text="{kepesertaanmodel>name}"
icon="{kepesertaanmodel>icon}">
<u:Menu items="{kepesertaanmodel>sub/}" id="submenuEventingKepesertaan"
itemSelect="handleSubMenuItemPressKepesertaan">
<u:MenuItem
text="{kepesertaanmodel>name}"
icon="{kepesertaanmodel>icon}"/>
</u:Menu>
</u:MenuItem>
</u:Menu>
</core:FragmentDefinition>
控制器中的:
handleMenuItemPressKepesertaan: function(oEvent) {
MessageToast.show(oEvent.getParameter("item").getModel("kepesertaanmodel").getProperty("/").name);
}
我希望在单击按下时显示JSON对象中的名称,但是失败了。怎么解决? 感谢。
答案 0 :(得分:0)
尽管我理解你想要从所选项目的当前上下文中获取属性的问题。
您可以尝试:
oEvent.getParameter("item").getBindingContext().getProperty("name");