JS/jQuery как получить значение элемента с одинаковыми class

S3
На сайте с 29.03.2012
Offline
341
2089

На странице размещены несколько ссылок с одинаковым классом.Примерно так


<ul>
<li> Май 3, 2016 : Новости :<a href="javascript:void(0)" class="url">files/data.json</a> </li>
<li> Май 3, 2016 : Новости сайта :<a href="javascript:void(0)" class="url">files/novosti-saita2_xIlrZVz.json</a> </li>
</ul>

Мне нужно получить значение ссылки по клику. Для первого элемента я могу получить так:


$(document).ready(function ($) {
$('.url').click(function(){
alert('work '+ $('.url').html());
});
});

Но так мне выдается только первый элемент. Как получить из ссылки, по которой кликнули?

Или если прописывать разные классы url1 url2 url3... как переписать функцию, что бы она на все классы реагировала? Их может быть не более 10

I2
На сайте с 07.03.2015
Offline
38
#1

наверное что-то типа этого

$(document).ready(function ($) {
$('.url').click(function(){
alert('work '+ $(this).html()); // значение по которой кликнуто (this)
});
});
Качественная верстка PSD макетов (/ru/forum/974524)
S3
На сайте с 29.03.2012
Offline
341
#2

indenger20, спасибо! работает.

---------- Добавлено 04.05.2016 в 23:40 ----------

И тогда, может уже подскажете, как полученное значение передать в форму.

Есть инпут с name="file"

вместо алерта выше делаю так:


var path = $(this).html();
$("input[name='file']").val(path);

Не работает.

Joker-jar
На сайте с 26.08.2010
Offline
166
#3

А тип инпута случайно не file? У них нельзя менять значение динамически.

S3
На сайте с 29.03.2012
Offline
341
#4
Joker-jar:
А тип инпута случайно не file? У них нельзя менять значение динамически.

Нет, но стояло name="file" и действительно воспринималось как file - особенности ORM движка. Поправил уже и все работает прекрасно.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий