在下面的代码和演示http://jsfiddle.net/jasondavis/vp2YN/3/中,您可以看到我需要获取所点击项目的ID属性,并将其分配给Javascript中的变量。
现在,无论点击哪个项目,代码都会返回第一个项目的ID名称。
在Javascript中,您可以看到我已将此行注释掉...
var clickedID = this.attr("id");
当我使用该行时,我收到一条错误消息:Object has no method 'attr'
请帮助我获取所点击链接的ID名称并将其分配给变量
HTML
<a href="#" style="display:block" class="button insertcolumn" id="one_half">2 Columns</a>
<a href="#" style="display:block" class="button insertcolumn" id="one_third">3 Columns</a>
<a href="#" style="display:block" class="button insertcolumn" id="one_fourth">4 Columns</a>
使用Javascript / jQuery的
jQuery('.insertcolumn').click(function(){
var clickedID = jQuery('.insertcolumn').attr("id");
//var clickedID = this.attr("id");
alert(clickedID);
});
答案 0 :(得分:9)
你必须引用你用jQuery包装器点击的那个!
您想要使用
$(this).attr('id');
要获取id(无需无理由遍历DOM),最好只调用对象id
。
this.id;
但是,无论属性的类型如何,都要访问该属性,并根据属性的名称使用以下代码。
jQuery('.insertcolumn').click(function(){
var clickedID = $(this).attr('id');
alert(clickedID);
});