Ответ 1
Убедитесь, что вы передаете селектор в jQuery, а не какую-либо информацию:
$( '.my-selector' )
не
$( [ 'my-data' ] )
Я преподаю AJAX AJAXify мой сайт. В моем шаблоне у меня есть следующий JS-код, чтобы получить некоторые данные JSON из представления, а затем добавить данные в div.
function filter(type) {
$.getJSON(
'/activity_stream/global-activity-stream/',
{xhr: "true", filter: type},
function(data) {
$('.mainContent').children().remove();
$(data).appendTo('.mainContent');
});
}
$(".btn").click(function () {
filter("recent");
});
}
Я думаю, что мое представление возвращает правильный JSON, но теперь данные не добавляются в div .mainContent
.
Он дает эту ошибку:
Uncaught TypeError: Невозможно прочитать свойство "ownerDocument" из undefined.
Убедитесь, что вы передаете селектор в jQuery, а не какую-либо информацию:
$( '.my-selector' )
не
$( [ 'my-data' ] )
У меня была аналогичная проблема. Я использовал jQuery.map, но я забыл использовать jQuery.map(...). Get() в конце для работы с нормальным массивом.
Эта же проблема возникла у меня внутри $elms.each()
.
Потому что:
.each(Function)
, выдает (по крайней мере) два аргумента; первый - это индекс, а второй - элемент в текущем элементе в списке, ау вас может возникнуть соблазн сделать это:
$elms.each((item) => $(item).addClass('wrong'));
Если это то, что вам нужно:
$elms.each((index, item) => $(item).addClass('wrong'));