Alguém sabe como posso obter o href do link clicado com jquery? Eu tenho o seguinte 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>
Escrevi o seguinte código para obter o valor href do link em que cliquei. Mas de alguma forma, isso sempre me retorna o primeiro href do link (ID = 1), embora eu tenha clicado em Teste2 ou Teste3. Alguém sabe o que está acontecendo aqui? e como posso resolver esse problema?
$(".testClick").click(function () {
var value = $(".testClick").attr("href");
alert(value );
});
var addressValue = this.href;
href="sibling_file.htm"
então $ (this) .attr ("href") retornasibling_file.htm
e retorna this.hrefhttps://example.com/folder/sibling_file.htm
(que é o que eu esperava e queria.)Você está procurando por
$(this).attr("href");
fonte
$(".testClick").click(function () { var value = $(this).attr("href"); alert(value ); });
Quando você usa $ (". ClassName"), está obtendo o conjunto de todos os elementos que possuem essa classe. Então, quando você chama attr, ele simplesmente retorna o valor do primeiro item da coleção.
fonte
Suponha que temos três tags âncora como,
<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>
agora no script
$(".testClick").click(function () { var anchorValue= $(this).attr("href"); alert(anchorValue); });
use esta palavra - chave em vez de className (testClick)
fonte