9

这是一个小提琴

我想获取href属性,我用$(this).attr('href')了但是不行!

HTML

<div class="wrap_atletas_interno">
    <ul>
        <li class="atleta">
            <a href="teste.html">
                <div class="nome_86_atleta">Antônio</div>
                <img src="atletas/antonio_86px.jpg" />
            </a>
        </li>
        <li  class="atleta">
            <div class="nome_86_atleta">Cauê</div>
            <img src="atletas/caue_86px.jpg" />
        </li>
        <li class="atleta">
            <div class="nome_86_atleta">Dudu</div>
            <img src="atletas/dudu_86px.jpg" />
        </li>
    </ul>
</div>

JavaScript

$('.atleta').click(function (e) {
    e.preventDefault();
    $('.atleta').removeClass('atleta_atual');
    $(this).addClass('atleta_atual');
    var h = $(this).attr('href');
    alert(h);
    $.get(h, function (data) {
        //$(".detalhes_atleta").html(data).fadeIn("slow");
        alert(h);
    });
});
4

6 回答 6

18

检查更新的小提琴

改变了

var h = $("a",this).attr('href');
于 2013-01-05T19:19:14.507 回答
3

$(this)li的是链接的父级。你需要使用

$(this).find('a').attr('href');

另外请修复您的html, 块元素不应该在内联元素中。

在您的情况下,div不应该在a

于 2013-01-05T19:19:31.527 回答
1

您想要href来自 的属性a,但$(this)在您的示例中是针对 的li,这就是它不起作用的原因。

为什么不设置点击事件a呢?

例子:$('.atleta a').click(function(e) ...

于 2013-01-05T19:28:30.793 回答
1

尝试

var h = $('a', this).attr('href');
于 2013-01-05T19:16:53.460 回答
1

试试这个

     var href= $('a',this).length>0? $('a',this).attr('href') : '';
于 2013-01-05T19:17:34.243 回答
1

在这里,$this是指向<li>但你需要的hrefattr<a>所以找到<a>里面<li>并获取 attr href...

尝试这个

$(this).find('a').attr('href');
于 2013-01-05T19:21:30.523 回答