获取已点击链接的ID

时间:2012-12-31 11:17:53

标签: jquery jquery-selectors

我的fancybox脚本中有这个代码:

<a href="#" class="approve" id="178">yes</a>

当我尝试使用时:

 var getid = $(this).attr('id');
 alert(getid);

我总是未定义。有人可以帮忙吗?

三江源

4 个答案:

答案 0 :(得分:3)

您正在使用this而没有任何先前的选择对象返回任何选定的DOM元素,获取所需目标元素的id的可能方法是使用目标元素上的class属性

  var getid = $(".approve").attr('id');
   alert(getid);

或者您可以使用元素的名称a,但它会选择html页面中的所有链接

  var getid = $("a").attr('id');
  alert(getid);

或该元素的任何属性。

 var getid = $("a[href]").attr('id');
 alert(getid);

参考:

http://api.jquery.com/category/selectors/

答案 1 :(得分:3)

使用此代码

var getid = $('.approve').attr('id');
alert(getid);

答案 2 :(得分:1)

试试这个:

$(document).on('click', '.approve', (function() {
    var getid = $(this).prop('id');
    alert(getid);
});​

答案 3 :(得分:0)

使用类名而不是此

var getid = $(".approve").attr('id');
 alert(getid);

或使用标签名称

var getid = $("a").attr('id');
 alert(getid);

或使用属性名称

var getid = $("a[href]").attr('id');
 alert(getid);

如果您想使用<a>引用this标记,例如以下示例

$("a").click(function(){             
    var getid = $(this).attr('id');
    alert(getid);
 });

jquery选择器引用 http://www.w3schools.com/jquery/jquery_ref_selectors.asp