Ответ 1
этот в вашей функции обратного вызова относится к кликнутому элементу.
$(".addressClick").click(function () {
var addressValue = $(this).attr("href");
alert(addressValue );
});
Кто-нибудь знает, как я могу получить ссылку href с помощью jquery? У меня есть ссылка:
<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>
Я написал код как следующий, чтобы получить значение href из ссылки, на которую я нажал. Но почему-то это всегда возвращает мне 1-ю ссылку href (ID = 1), хотя я нажал на Test2 или Test3. Кто-нибудь знает, что здесь происходит? и как я могу решить эту проблему?
$(".testClick").click(function () {
var value = $(".testClick").attr("href");
alert(value );
});
этот в вашей функции обратного вызова относится к кликнутому элементу.
$(".addressClick").click(function () {
var addressValue = $(this).attr("href");
alert(addressValue );
});
Вы ищете $(this).attr("href");
$(".testClick").click(function () {
var value = $(this).attr("href");
alert(value );
});
Когда вы используете $( ". className" ), вы получаете набор всех элементов, имеющих этот класс. Затем, когда вы вызываете attr, он просто возвращает значение первого элемента в коллекции.
Предположим, что у нас есть три якорных тега, например
<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>
теперь в script
$(".testClick").click(function () {
var anchorValue= $(this).attr("href");
alert(anchorValue);
});
используйте это ключевое слово вместо className (testClick)