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

0

Этот пример хорошо работает и тот же, что и в моем проекте, но данные, которые я использую, в этом случае div с data-name attr загружается ajax, и похоже, что он не работает. В консоли firefox выводит это после click:

getPreventDefault() sollte nicht mehr verwendet werden. Verwenden Sie stattdessen defaultPrevented.jquery.min...

http://jsfiddle.net/n495c/14/

JS

      $(document).ready(function() {
        $("#content div").click(function() {
            var title = $(this).data("name");
            $("#content div").text(title);
        });
    });

HTML

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<div id="content">
<div data-name="Neu"></div>
</div>

CSS

#content {
    width: 100%;
    height: 100%;
}

#content div {
    width: 50px;
    height: 50px;
    background: red;
    color: white;
}
  • 0
    Делегированные обработчики событий.
  • 0
    что вы подразумеваете под «делегированными обработчиками событий»? здесь вывод консоли в EN: getPreventDefault() shouldnt be used anymore. Use defaultPrevented instead.
Показать ещё 2 комментария
Теги:
jquery-data

1 ответ

0
Лучший ответ

Делегированный обработчик событий:

$(document).ready(function() {
    $(document).on('click', '#content div', function() {
        var title = $(this).data("name");
        $("#content div").text(title);
    });
});
  • 0
    Хорошо спасибо! Оно работает! Просто для понимания, в чем разница между моим кодом?
  • 0
    Разница в делегированном обработчике событий. Использование on () таким образом делегирует событие элементу, который фактически существует во время привязки.

Ещё вопросы

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