2014-04-06 32 views
0

在我的嵌套列表中,我有兩個html按鈕。我已經擁有了一個監聽器,用於顯示持有兩個按鈕的嵌套列表,但我想添加另一個監聽器,在按下其中一個按鈕時執行一些操作。每個按鈕都有不同的功能,所以我一直無法將其中一個按鈕委託給特定的功能。有沒有辦法做這樣的事情:Sencha Touch 2:聽兩個不同的HTML按鈕點擊

listeners : { 
element : 'element', 
delegate : 'button.mybutton', 
tap  : function() { 
    //... 
    } 
} 

但是對於多個代表,其中每個代表做別的事情?

回答

1

你可以添加數據屬性的按鈕,並作出相應的反應:

<button data-do="showDetailCard"> 
<button data-do="anotherAction"> 

// ... 

listeners: { 
    tap: { 
     element: 'element', 
     delegate: 'button', 
     fn: 'doAction' 
    } 
} 

// ... 

function doAction(event) { 
    var do = event.target.dataset.do; 
    if (do === 'showDetailCard') { 
     // show detail card 
    } else if (do === 'anotherAction') { 
     // do another action 
    } 
}