Próbuję uzyskać wartość href za pomocą jQuery:
<html>
<head>
<title>Jquery Test</title>
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$("a").click(function(event) {
alert("As you can see, the link no longer took you to jquery.com");
var href = $('a').attr('href');
alert(href);
event.preventDefault();
});
});
</script>
</head>
<body>
<a href="http://jquery.com/">jQuery</a>
</body>
</html>
Ale to nie działa. Czemu?
javascript
jquery
Adi Sembiring
źródło
źródło
Odpowiedzi:
Potrzebujesz
Wewnątrz modułu obsługi kliknięcia jQuery
this
obiekt odwołuje się do klikniętego elementu, podczas gdy w Twoim przypadku zawsze otrzymujesz href dla pierwszego<a>
elementu na stronie. Nawiasem mówiąc, właśnie dlatego twój przykład działa, ale twój prawdziwy kod nieźródło
Możesz uzyskać aktualną wartość href za pomocą tego kodu:
Aby uzyskać wartość href według identyfikatora
źródło
Działa ... Przetestowano w IE8 (nie zapomnij pozwolić na uruchomienie javascript, jeśli testujesz plik na swoim komputerze) i chrome.
źródło
jeśli strona ma jeden
<a>
To działa , ale , wiele<a>
, trzeba użyćvar href = $(this).attr('href');
źródło
Warto o tym wspomnieć
źródło