获取jQuery的href属性

我有一些表行

           

我需要在属性中获取超链接。 我用这个脚本

 function openAll() { $("tr.b_row").each(function(){ var a_href = $('div.cpt').find('h2 a').attr('href'); alert ("Href is: " + a_href); } 

问题:变量a_href总是/ ref / ref / 1.html

在循环中你应该引用当前的procceded元素,所以写:

 var a_href = $(this).find('div.cpt h2 a').attr('href'); 
 var a_href = $('div.cpt').find('h2 a').attr('href'); 

应该

 var a_href = $(this).find('div.cpt').find('h2 a').attr('href'); 

在第一行中,您的查询将搜索整个文档。 在第二个中,查询从你的tr元素开始,只获取它下面的元素。 (如果你愿意的话,你可以把它们结合起来,我把它们分开来说明这一点。)

用这个:

 $(function(){ $("tr.b_row").each(function(){ var a_href = $(this).find('div.cpt h2 a').attr('href'); alert ("Href is: "+a_href); }); }); 

查看工作演示: http //jsfiddle.net/usmanhalalit/4Ea4k/1/

添加this的引用,引用您的b_row

 $("tr.b_row").each(function(){ var a_href = $( this ).find('div.cpt h2 a').attr('href'); alert ("Href is: "+a_href); }); 

很简单,使用this作为上下文: http : //api.jquery.com/jQuery/#selector-context

 var a_href = $('div.cpt', this).find('h2 a').attr('href'); 

哪个说,只在里面找到'div.cpt'

使用$(this)获取欲望元素。

 function openAll() { $("tr.b_row").each(function(){ var a_href = $(this).find('.cpt h2 a').attr('href'); alert ("Href is: "+a_href); }); } 
Interesting Posts