Как изменить текст у дочернего элемента после клика по родительскому?

Всем привет, есть div (like). После клика по нему данные отправляются на сервер, а полученные данные с сервера нужно поместить в дочерний элемент span именно того div на который нажали. Вот как попробовал я (в качестве селектора указал $(this) + " #resp"), но ничего не вышло.
Элементов #resp на странице несколько

<div class="like" data-id="878975">
    ......
   <span id="resp"></span>
</div>


$(".like").live("click", function()	{
	var id = $(this).data("id");
	$.ajax({
	   type: "POST",
	   url: "/ajax/like/",
	   data: {"image_id": image_id, "change": change},
	   cache: false,
	   success: function(response){
		$($(this) + " #resp").text(response);
	  }
	});
return false;
});
  • Вопрос задан
  • 727 просмотров
Решения вопроса 2
У вас получается при преобразовании объекта, вот такой селектор:
$("[object Object] #resp")

Вот так должно сработать:
$($(this).attr('id') + " #resp").text(response);
// Или
$(this.id + " #resp").text(response);

Так можно сразу по ID обращаться.
Ну или так:
$("#resp", $(this)).text(response);
Ответ написан
Stalker_RED
@Stalker_RED
Правильно не $(this + " #resp") а $('#resp', this) или $(this).find('#resp')
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы