我想用jQuery获取点击链接的ID。为什么这会返回Undefined
?
test = function(e) {
alert($(e).attr('id'));
return false;
}
$('.bleu').click(test)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<a href="" class="bleu" id="h12">azeaze12</a>
<a href="" class="bleu" id="h13">azeaze13</a>
<a href="" class="bleu" id="h14">azeaze14</a>
答案 0 :(得分:3)
答案 1 :(得分:2)
你需要使用this
它引用点击的dom元素,click事件处理程序中的第一个参数是event
object
test = function(e) {
alert($(this).attr('id'));
return false;
}
$('.bleu').click(test)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<a href="" class="bleu" id="h12">azeaze12</a>
<a href="" class="bleu" id="h13">azeaze13</a>
<a href="" class="bleu" id="h14">azeaze14</a>
答案 2 :(得分:0)
使用current_user.is_authenticated
,并使用.prop
作为ID或this
:
this.id
替代如果上下文绑定在函数上,例如在Backbone视图上绑定事件时,可以使用test = function(e) {
alert(this.id);
return false;
}
$('.bleu').click(test);
,请考虑以下事项:
event.currentTarget
答案 3 :(得分:0)
使用click事件并使用attr获取id。试试这个:
$(".bleu").click(function(e) {
alert($(this).attr("id");
});
答案 4 :(得分:0)
使用此关键字
<script>
test = function(e) {
debugger;
alert($(this).attr('id'));
return false;
}
$('.bleu').click(test)
</script>