Frage Wie bekomme ich die href des geklickten Links mit jquery?


Weiß jemand, wie kann ich die angeklickte Link href mit jquery bekommen? Ich habe den Link wie folgt:

    <a  href="ID=1" class="testClick">Test1.</a>
    <br />
    <a  href="ID=2" class="testClick">Test2.</a>
    <br />
    <a  href="ID=3" class="testClick">Test3.</a>

Ich schrieb einen Code wie folgt, um den href-Wert von dem Link zu erhalten, auf den ich geklickt habe. Aber irgendwie gibt mir das immer den ersten Link href (ID = 1) zurück, obwohl ich auf Test2 oder Test3 geklickt habe. Weiß jemand, was hier los ist? und wie kann ich dieses Problem lösen?

    $(".testClick").click(function () {
        var value = $(".testClick").attr("href");
        alert(value );
    });

75
2018-04-01 00:37


Ursprung


Antworten:


Dies in Ihrer Callback-Funktion bezieht sich auf das angeklickte Element.

   $(".addressClick").click(function () {
        var addressValue = $(this).attr("href");
        alert(addressValue );
    });

141
2018-04-01 00:38



Du schaust nach $(this).attr("href");


13
2018-04-01 00:37



$(".testClick").click(function () {
         var value = $(this).attr("href");
         alert(value );     
}); 

Wenn Sie $ (". ClassName") verwenden, erhalten Sie die Menge aller Elemente, die diese Klasse haben. Wenn Sie dann attr aufrufen, wird einfach der Wert des ersten Elements in der Sammlung zurückgegeben.


9
2018-04-01 00:38



Angenommen, wir haben drei Anker-Tags wie

<a  href="ID=1" class="testClick">Test1.</a>
<br />
<a  href="ID=2" class="testClick">Test2.</a>
<br />
<a  href="ID=3" class="testClick">Test3.</a>

jetzt im Drehbuch

$(".testClick").click(function () {
        var anchorValue= $(this).attr("href");
        alert(anchorValue);
});

benutzen Dies Schlüsselwort anstelle von className (testClick)


1
2017-11-10 07:28