In Javascript, I am trying to pass a class member to a jQuery function, but somehow the 'this' object in this function is confused. This is the code:
function Hints() { this.markProduct = function() { alert('hi'); }; this.selectProduct = function() { this.markProduct(); }; }
When I call this code using this:
oHints = new Hints(); oHints.selectProduct();
It works fine, and the 'this' object in the selectProduct function refers to the Hints object. But when I try this:
oHints = new Hints(); $('#prodquery').keydown(oHints.selectProduct);
The 'this' object in the selectProduct function refers to the html object that triggered the keydown event.
Somebody knows? I am puzzled: /
source share