2017-04-12 58 views
-2

当我选择item时,我想从下拉菜单中获取对象名称。如何从事件itemSelect获取对象?感谢您的关注。下拉菜单获取对象JSON

Dropdown menu pic

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> 

Javascript代码:

handleMenuItemPressKepesertaan: function(oEvent) {   
    alert(oEvent.getSource().getItems().getBindingContext().getObject().name); 
} 

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" 
         } 
        ] 
       }   
      ] 
} 

如何解决这个问题?

+0

你有没有检查的文件? https://sapui5.hana.ondemand.com/ – matbtt

回答

1

这是否帮助:

oEvent.getParameter("item").getBinding("text").getValue("name") 

你也可以看看this snippet

+0

我只是可以得到文本,当我按下该项目,我想在JSON中获取对象时,我按下等:图标或其他.. –

+0

哪个对象?整个对象? –