Event parameter not defined for Knockout click binding using Firefox

前端 未结 2 1723
佛祖请我去吃肉
佛祖请我去吃肉 2021-02-14 16:36

I am getting this JS error: ReferenceError: event is not defined when I try to pass the event object to click binding when I use Firefox 23. Ev

相关标签:
2条回答
  • 2021-02-14 17:30

    Here the solution from github.com/knockout/knockout/issues/752

    <!-- ko foreach: entries -->
       <tr data-bind="click: function(data, event){ $parent.expandRow($data, event) }">
          ...
       </tr>
    <!-- /ko -->
    

    Under Firefox event is not defined on the window object, instead it needs to be passed to the function.

    0 讨论(0)
  • 2021-02-14 17:36

    I know that this is a pretty old question, but still if someone is looking for the answer then I achieved it in the following way:

    <div id="this-element" data-bind="click : function(){ $root.clicked(event)}">
    
    </div>
    

    Following code (clicked function) is written in the ViewModel for the page:

    this.clicked= function (event) {
        console.log(event.currentTarget.id);
    }
    

    Knockout 3.4.2

    jQuery 3.2.1

    0 讨论(0)
提交回复
热议问题