Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   jQuery Ajax - 3 дня мучений :) (https://javascript.ru/forum/jquery/2935-jquery-ajax-3-dnya-muchenijj.html)

grusha 01.03.2009 20:48

jQuery Ajax - 3 дня мучений :)
 
Есть,скажем, такой код

Код:

<div class=’1′>
<span class=’my_class’>
<a class=’link_a’ title=’moi_site.com/test.php?id=1’>
Save
</a>
</span>
<span class=’text’></span>
</div>

<div class=’1′>
<span class=’my_class’>
<a class=’link_a’ title=’moi_site.com/test.php?id=2’>
Save
</a>
</span>
<span class=’text’></span>
</div>

jQuery код такой:

jQuery(’.link_a’).click(function(event) {
var title_link = jQuery(this).attr(’title’);
jQuery.ajax({
url: title_link,
type:’POST’,
success: function(){
jQuery(”.text”).text(”Saved”)
.fadeOut(3000);
}
});
});


Всё работает нормально , вот только текст "Saved" появляется во всех div-ах , а надо что бы только в том на котором был произведён click.
Может кто подскажет ?
Заранее благодарен.

Zibba 01.03.2009 21:19

Хмм, не знаю конечно, но разве
Цитата:

Сообщение от grusha
<div class=’1′>

class может начинаться с цифры!? (но это не суть важно). Текс скорее всего появляется в обоих div'ах из-за того что у них одинаковые классы text, а вот этой срочкой
jQuery(”.text”)
вы обращаетесь ко всем элементам с класом text (извиняюсь если не так изожил в jQuery полный ноль :/ )

Андрей Параничев 02.03.2009 00:14

jQuery('.link_a').click(function(event) {
var title_link = jQuery(this).attr('title');
var link = this;
jQuery.ajax({
url: title_link,
type:'POST',
success: function(){
jQuery(link).parent("div").find(".text").text("Saved")
.fadeOut(3000);
}
});
});


Что за кавычки такие? Из ворда вставляете код?

grusha 02.03.2009 14:34

Цитата:

Сообщение от Андрей Параничев (Сообщение 13373)

Что за кавычки такие? Из ворда вставляете код?

Огромное спасибо Андрей ! Это работает.
Кавычки такие потому что я задавал этот вопрос на другом форуме и скопировал код оттуда .

rudenich 01.09.2010 06:53

jQuery('.link_a').click(function(event) {
var title_link = jQuery(this).attr('title');
jQuery.ajax({
url: title_link,
type:'POST',
context, this
success: function(){
jQuery(this).parent("div").find(".text").text("Saved")
.fadeOut(3000);
}
});
});


Немного переработанный вариант Андрея
в параметрах ajax указываем объект в контексте которого будет вызвана функция


Часовой пояс GMT +3, время: 10:51.