当我按下另一个href时如何获得链接的href

时间:2015-06-29 12:00:23

标签: javascript jquery ajax html5

我希望得到上面链接旁边的attr href我按下productinfo div class的最后一个链接。我尝试了最接近,但它给了我相同的链接我按,我想要上面的一个。我想要存储在produs_href中的链接是来自href类下的第一个productinfo的链接。这是我的代码:

<div class="col-sm-4 produse"><!--PRODUS-->
    <div class="product-image-wrapper">
        <div class="single-products">
            <div class="productinfo text-center">
                <a href="/'.$recomand['ID_Produs'].'/'.$recomand['Nume_Prod'].'.php"><img src="/images/produse/'.$recomand['ID_Produs'].'/'.$recomand['Poza'].'" alt="" /></a>
                <h2 style="text-decoration: line-through;">'.$recomand['Pret'].' lei </h2><h2>'.$recomand['Pret_Nou'].' lei </h2>
                <a href="link produs"><p>'.$recomand['Nume_Prod'].' '.$recomand['Gramaj'].' '.$tip.'</p></a>
                <a href="/engine/app/cos.php?id='.$recomand['ID_Produs'].'" class="btn btn-default add-to-cart cos"><i class="fa fa-shopping-cart"></i>Adaugă în coș</a>
            </div>          
        </div>          
    </div>
</div>

jquery的

<script>
    $(".cos").click(function(e){
    e.preventDefault();
    var href = $(this).attr('href');
    var produs_href = $(this).closest('a').attr('href');
    $.getJSON(href, function(data) {
        $.each(data, function(key, val) {
            $("#cnt").empty();
             $("#test").append('<li>' + val.nume + '</li>')
             $("#cnt").append('' + val.cnt +'')
        });
    });
    $(\'#detalii_prod\').modal('show'); 
    alert(produs_href);
    });
    </script>

5 个答案:

答案 0 :(得分:2)

使用prev。这个方法得到了前一个兄弟。

$(this).prev().attr('href');

修改

从您的评论中,可以解决问题的代码是

$(this).closest('.productinfo').find('a:first').attr('href');

答案 1 :(得分:0)

您可以使用.prev

var link = $(this).prev()。attr('href');

现在您可以使用链接。

答案 2 :(得分:0)

你可以这样使用 $(本).prev(&#34;&#34)。ATTR(&#34; HREF&#34);

以及更多帮助: Get the href value of a previous HTML anchoer, <a>, using jQuery

答案 3 :(得分:0)

$(".cos").click(function(e){
    e.preventDefault();

		var text = $(this).parent().find('a:first').attr('href');
		alert(text);
    });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="col-sm-4 produse">
  <!--PRODUS-->
  <div class="product-image-wrapper">
    <div class="single-products">
      <div class="productinfo text-center"> <a href="test.php"><img src="img/Penguins.jpg" height="50" width="50" alt="" /></a>
        <h2 style="text-decoration: line-through;">Hello there</h2>
        <h2>Anto</h2>
        <a href="link produs">
        <p>Angeline</p>
        </a> <a href="#" class="btn btn-default add-to-cart cos"><i class="fa fa-shopping-cart"></i>Test</a> </div>
    </div>
  </div>
</div>

试试这个

$(this).parent().find('a:first').attr('href');

答案 4 :(得分:0)

尝试使用.eq()方法。

$(this).parent().find('a').eq(0).attr('href');

希望这可以帮助你...