Czy ktoś wie, jak mogę uzyskać href klikniętego linku za pomocą jQuery? Mam następujący link:
<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>
Napisałem następujący kod, aby uzyskać wartość href z linku, w który kliknąłem. Ale w jakiś sposób zawsze zwraca mi href pierwszego łącza (ID = 1), mimo że kliknąłem Test2 lub Test3. Czy ktoś wie, co się tutaj dzieje? i jak mogę rozwiązać ten problem?
$(".testClick").click(function () {
var value = $(".testClick").attr("href");
alert(value );
});
var addressValue = this.href;
href="sibling_file.htm"
to $ (this) .attr ("href") zwraca,sibling_file.htm
a this.hrefhttps://example.com/folder/sibling_file.htm
(czyli to, czego oczekiwałem i chciałem).Szukasz
$(this).attr("href");
źródło
$(".testClick").click(function () { var value = $(this).attr("href"); alert(value ); });
Kiedy używasz $ (". ClassName"), otrzymujesz zestaw wszystkich elementów, które mają tę klasę. Następnie wywołanie attr po prostu zwraca wartość pierwszego elementu w kolekcji.
źródło
Załóżmy, że mamy trzy tagi kotwicy, takie jak:
<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>
teraz w skrypcie
$(".testClick").click(function () { var anchorValue= $(this).attr("href"); alert(anchorValue); });
użyj tego słowa kluczowego zamiast className (testClick)
źródło