我正在使用knockoutjs,我目前有一些看起来像这样:
<img id="myTab1" data-bind="click: pressedTab.bind($data,'#myTab1')" src="images/image1.png"></img>
这允许我在我的视图模型中获取元素ID:
pressedTab = function(tab){ console.log("Element ID: " + tab); }
这写道:
Element ID: #myTab1
但是,在click事件中发送img id的名称太重复了。有没有明确的重写方式发送img id?
解决方法
您实际上可以通过KO点击处理程序访问该事件对象。
<button id="somebutton" data-bind="click: log">Click Me </button> var viewmodel = function() { this.log = function(data,event) { console.log("you clicked " + event.target.id); } }; ko.applyBindings(new viewmodel());
http://jsfiddle.net/madcapnmckay/e8JPT/
希望这可以帮助。