我绑定到页面中的A标签,如下所示:
$('a').click(function(event) {
alert('hi');
});
问题是页面中的每个A标签都会发送警报。我只希望下表中的A标签发送警报。如何限制jquery仅发送此表中生成的标签的警报?
<table class="add-alert">
<tbody>
{% for object in objects %}
<tr>
<td>
<a id="{{ object.id }}" href="">Click Me</a>
</td>
</tr>
{% endfor %}
</tbody>
</table>
答案 0 :(得分:2)
你委托它。通过委托,我的意思是将其绑定到静态父级,它将从那里管理点击到a
。
$(".add-alert").on("click", "a", function (e) {
e.preventDefault();
//your stuff
});
即使a
是动态的,这也会有效。我们在此处使用e.preventDefault()
的原因是为了防止a
的默认点击触发。
答案 1 :(得分:0)
$('table.add-alert a').click(function(event) {
alert('hi');
});
假设这就是你的意思。