获取jQuery的href属性

BIL*_*ILL 17 each jquery get href attr

我有一些表行

<tr class="b_row">
    <td>
        <div class="cpt">
            <h2>
                <a href="/ref/ref/1.html">example</a>
            </h2>
        </div>
    </td>
</tr>

<!--more elements -->

<tr class="b_row">
    <td>
        <div class="cpt">
            <h2>
                <a href="/ref/two/23.html">example N</a>
            </h2>
        </div>
    </td>
</tr>
Run Code Online (Sandbox Code Playgroud)

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

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

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

M. *_*zyk 56

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

var a_href = $(this).find('div.cpt h2 a').attr('href');
Run Code Online (Sandbox Code Playgroud)


Den*_*nis 6

var a_href = $('div.cpt').find('h2 a').attr('href');
Run Code Online (Sandbox Code Playgroud)

应该

var a_href = $(this).find('div.cpt').find('h2 a').attr('href');
Run Code Online (Sandbox Code Playgroud)

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