Отправка данных в li в jquery, который уже имеет данные

0

У меня проблема. Мне нужно отправить данные в li в моей ul которая уже существует с группой других li.

Вот где я делаю список:

lijst = $("<li/>") 
  .appendTo("#deals")
  .data('stadnaam', oPlaats.Stad)
  .click(function() {
    showWeather($(this).data('stadnaam'));
  });

$("<span/>")
  .text(oPlaats.Prijs)
  .addClass("price")
  .appendTo(lijst);

$("<strong/>")
  .text(oPlaats.Stad)
  .appendTo(lijst);

$("<span/>")
.text(oPlaats.Land)
.appendTo(lijst);

Если вы нажмете на него, в этой строке должно быть еще 2 div. Как я могу это сделать? Теперь я делаю это так, но он помещает дату в последнюю строку:

$("<br/>")
  .appendTo(lijst);

$("<div/>")
  .text(celsius)
  .addClass("weather")
  .appendTo(lijst);

$("<br/>")
  .appendTo(lijst);

$("<div/>")
  .text(oWeather[j].main)
  .addClass("weather")
  .appendTo(lijst);
  • 1
    Java! == JavaScript
  • 0
    @epascarello bool(true) :) только что отредактировал вопрос.

1 ответ

0

Если вы хотите добавить новые элементы в UL, а не в LI, вы должны добавить его к родительскому элементу вашего элемента:

$("<br/>")
  .appendTo(lijst.parent());

$("<div/>")
  .text(celsius)
  .addClass("weather")
  .appendTo(lijst.parent());

$("<br/>")
  .appendTo(lijst.parent());

$("<div/>")
  .text(oWeather[j].main)
  .addClass("weather")
  .appendTo(lijst.parent());

Другой способ заключается в следующем:

$("<br/>")
  .appendTo(lijst.closest('ul'));

$("<div/>")
  .text(celsius)
  .addClass("weather")
  .appendTo(lijst.closest('ul'));

$("<br/>")
  .appendTo(lijst.closest('ul'));

$("<div/>")
  .text(oWeather[j].main)
  .addClass("weather")
  .appendTo(lijst.closest('ul'));

Но я рекомендую использовать функцию parent(). Дайте мне знать, если это решит вашу проблему.

ИЗМЕНИТЬ ПОСЛЕ КОММЕНТАРИЙ:

Вы должны добавить событие click для lijst var:

lijst.click(function() {
    var self = $(this);
    var div = $('<div />');

    self.append(div);
});
  • 0
    Нет, это не теперь он размещен после ул
  • 0
    Я не понимаю, вы хотите добавить элементы в UL? если вы хотите это в начале UL, вы можете заменить appendTo на prependTo
Показать ещё 2 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню