Я пытаюсь получить значение href, используя 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>
Но это не работает. Зачем?
javascript
jquery
Ади Сембиринг
источник
источник
Ответы:
Тебе нужно
Внутри обработчика щелчков jQuery
this
объект ссылается на элемент, на который нажали, тогда как в вашем случае вы всегда получаете href для первого<a>
на странице. Вот почему, кстати, ваш пример работает, а ваш реальный код - нетисточник
Вы можете получить текущее значение href следующим кодом:
Чтобы получить значение href по ID
источник
Это работает ... Протестировано в IE8 (не забудьте разрешить запуск javascript, если вы тестируете файл с вашего компьютера) и chrome.
источник
если на странице есть один
<a>
Это работает, но много<a>
, придется использоватьvar href = $(this).attr('href');
источник
Стоит отметить, что
источник