Проблема родительского селектора - PullRequest
0 голосов
/ 17 июня 2011

Привет всем, у меня есть такой код jq:

Добавление элемента:

  $(".wynink_main").live("mouseenter", function() {
  $(this).append("<div class='mapa_dojazdu'>Mapa dojazdu</div>");
  });

В div .wynik_main есть некоторые div с текстом.И теперь, когда я нажимаю на div .mapa_dojazdu, я хотел бы получить текст из span .miejsce, который добавляется к div .wynik_main, но он не работает.

Вот мой неправильный код:

$(".mapa_dojazdu").live("click", function () {
  var is =  $(this).closest("div").find(".miejsce").html();
  alert(is);
});

Ответы [ 2 ]

0 голосов
/ 17 июня 2011

Изменение

$(this).closest("div").find(".miejsce").html()

до

$(this).closest(".wynink_main").find(".miejsce").html().

div является слишком общим и будет предназначаться для других div.

http://jsfiddle.net/ULjKC/

0 голосов
/ 17 июня 2011

Изменение

var is = $(this).closest("div").find(".miejsce").html();

до:

var is = $(this).parent().closest("div").find(".miejsce").html();

и должно работать нормально. Смотрите пример работы здесь . Проблема в том, что closest() начинается с текущего элемента, и, поскольку текущий элемент представляет собой div, он сразу же останавливается.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...