我有一个这样的DOM树:
<div class="like-bttn" data-answer-id="{{answer.id}}">
<div class="count>{{ answer.like_score }}</div>
<div class="heart>❤</div>
</div>
我有一个javascript代码,当点击了喜欢的时候发出ajax请求:
$(".like-bttn").click(function(ev) {
var id = $(ev.target).attr('data-answer-id');
... do something with id ...
})
但是当点击.heart时我的代码不起作用,因为ev.target是.heart而且它没有'data-answer-id'
这种侮辱的正确方法是什么?
答案 0 :(得分:2)
使用$(this)
,而不是事件目标:
$(".like-bttn").click(function(ev) {
var id = $(this).attr('data-answer-id');
... do something with id ...
})
并且,正如Neal指出的那样,使用data
更加清晰:
var id = $(this).data('answerId');