2013-10-10 1 views
0

Мне нужно получить некоторые данные, прикрепленные к стандартуListItem при его перетаскивании. Я обрабатываю перетаскивание с помощью jQuery-UI draggable. Я сделал следующее:Как подключить прослушиватель событий mouseenter к sap.m.StandardListItem?

var oItemTemplate = new sap.m.StandardListItem(); 
oItemTemplate .bindProperty("title", "ListModel>oLabel"); 
oItemTemplate .data("usefulListData","ListModel>EdmType"); 
oItemTemplate .addStyleClass("Draggable"); 
oItemTemplate .setType(sap.m.ListType.Active); 
oItemTemplate .attachPress(function(){ 
console.log(this.data("usefulListData")); 
console.log("item pressed"); 
}); 

но данные извлечения работает только тогда, когда StandardListItem нажата, я не работаю, когда элемент перетаскивается. Таким образом, идея состоит в том, чтобы прикрепить данные к методу mouseenter, как подключить прослушиватель событий событие mouseenter.

Благодаря Mohamed Ali

ответ

2

есть функция называется attachBrowserEvent доступны на каждом объекте наследуемых от sap.ui.core.Control: https://openui5.hana.ondemand.com/#docs/api/symbols/sap.ui.core.Control.html#attachBrowserEvent

С помощью этой функции вы можете в основном связываться с любой нативной случае браузер обеспечивает.

BR Chris

+0

Могу ли я использовать метод attachBrowserEvent, написанный только в моем XML-View? См. Мой вопрос. Http://stackoverflow.com/questions/31245260/attach-browser-event-to-a-control-using-xml-view – padibro

3

Вы можете прикрепить событие браузера к любому из элементов управления, как указано ниже.

oItemTemplate.attachBrowserEvent("mouseenter", function(oEvent) { 
    //get your model and do whatever you want: 
    oModel = sap.ui.getCore().getModel(); 
});