在我的網頁我想跟蹤至極按鈕,用戶在obdervable點擊:設置觀察到的值單擊
self.action = ko.observable();
我可以編寫一個函數setAction
與每個按鈕上點擊一個參數調用它,東西像這樣:
self.setAction = function (action) {
self.action(action);
}
但我不知道是否有辦法做到這一點,而不必每次調用setAction
功能?
在我的網頁我想跟蹤至極按鈕,用戶在obdervable點擊:設置觀察到的值單擊
self.action = ko.observable();
我可以編寫一個函數setAction
與每個按鈕上點擊一個參數調用它,東西像這樣:
self.setAction = function (action) {
self.action(action);
}
但我不知道是否有辦法做到這一點,而不必每次調用setAction
功能?
你可以做到這一點在線:
<button type="button" class="btn" data-bind="click: action.bind($data, 'btn-name')">btn-name</button>
或通過實際的按鈕對象
<button type="button" class="btn" data-bind="click: action.bind($data, this)">btn-name</button>
或者,如果您的問題是,你必須每次都寫這個點擊事件,你可以向每個按鈕添加一個類並添加一個事件偵聽器來設置該操作。
<button type="button" class="btn actionBtn">btn-name</button>
$(".actionBtn").click(function(){
var btn = $(this);
viewModel.action(btn);
});
你是說像使用jQuery的屬性?像按鈕的ID一樣。 $(this).attr('id') –
'btn'的值看起來像'div#cancel.tab.actionBtn.tabSelected'有沒有辦法只得到這個名字? – user3378165
關於如何實現這一點的任何想法? – user3378165
[淘汰賽事件代表團(http://www.knockmeout.net/2012/11/revisit-event-delegation-in-knockout-js.html) –