如果parent
是jQuery元素,那么当我这样做时:
parent.change(function (e) {
e.preventDefault();
console.log($(this));
console.log($(this).data('tab'));
});
这是有效的,但是当我这样做时:
parent.change((e) => {
e.preventDefault();
console.log($(this));
console.log($(this).data('tab'));
});
它不起作用,为什么?
答案 0 :(得分:1)
this
关键字get a different context within arrow functions。
试试这个:
parent.change((e) => {
e.preventDefault();
console.log($(e.target));
console.log($(e.target).data('tab'));
});