javascript - uncaught - Error de tipo no detectado: no se puede leer la propiedad ''ownerDocument'' de undefined
uncaught typeerror (4)
Me estoy enseñando AJAX a AJAXify mi sitio. En mi plantilla, tengo el siguiente código JS para obtener algunos datos JSON de una vista y luego adjuntar los datos a un 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");
});
}
Creo que mi opinión está devolviendo JSON adecuado pero ahora los datos no se están agregando a la div .mainContent
.
Da este error:
Error de tipo no detectado: no se puede leer la propiedad ''ownerDocument'' de undefined.
Asegúrese de pasar un selector a jQuery, no algún tipo de datos:
$( ''.my-selector'' )
no:
$( [ ''my-data'' ] )
El mismo problema se me ocurrió dentro de $elms.each()
.
Porque:
- la función que le pasa a
.each(Function)
expone (al menos) dos argumentos; el primero es el índice y el segundo el elemento en el elemento actual en la lista, y - porque otros métodos de bucle similares dan al elemento actual en la matriz antes del índice
Usted puede estar tentado a hacer esto:
$elms.each((item) => $(item).addClass(''wrong''));
Cuando esto es lo que necesitas:
$elms.each((index, item) => $(item).addClass(''wrong''));
En caso de que esté agregando al DOM, asegúrese de que el contenido sea compatible:
modal.find (''div.modal-body'').append (content) // check content
Tuve un problema similar Estaba usando jQuery.map pero olvidé usar jQuery.map (...). Get () al final para trabajar con una matriz normal.