Saya mencoba untuk mendapatkan nilai href menggunakan 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>
Tapi itu tidak berhasil. Mengapa?
javascript
jquery
Adi Sembiring
sumber
sumber
Jawaban:
Kamu butuh
Di dalam handler klik jQuery,
this
objek merujuk ke elemen yang diklik, sedangkan dalam kasus Anda, Anda selalu mendapatkan href untuk yang pertama<a>
di halaman. Ini, kebetulan, adalah contoh mengapa Anda bekerja tetapi kode asli Anda tidaksumber
Anda bisa mendapatkan nilai href saat ini dengan kode ini:
Untuk mendapatkan nilai href dengan ID
sumber
Ini berfungsi ... Diuji dalam IE8 (jangan lupa untuk memungkinkan javascript berjalan jika Anda menguji file dari komputer Anda) dan chrome.
sumber
jika halaman memiliki satu
<a>
Ini Berhasil, tetapi, banyak<a>
, harus digunakanvar href = $(this).attr('href');
sumber
Perlu disebutkan itu
sumber