Ya no busques más por otras páginas ya que llegaste al lugar indicado, tenemos la solución que quieres recibir pero sin liarte.
Solución:
Es aún más simple: simplemente use dataSrc:''
opción en la definición de ajax para que dataTable sepa esperar un array en lugar de un objeto:
$('#pos-table2').DataTable(
processing: true,
serverSide: true,
ajax:url:"pos.json",dataSrc:""
);
Ver opciones de ajax
PORQUE
estos errores TypeError: Cannot read property 'length' of undefined
generalmente significa que jQuery DataTables no puede encontrar los datos en la respuesta a la solicitud de Ajax.
De forma predeterminada, jQuery DataTables espera que los datos estén en uno de los formatos que se muestran a continuación. Se produce un error porque los datos se devuelven en un formato diferente al predeterminado.
matriz de matrices
"data": [
[
"Tiger Nixon",
"System Architect",
"$320,800",
"2011/04/25",
"Edinburgh",
"5421"
]
]
Matriz de objetos
"data": [
"name": "Tiger Nixon",
"position": "System Architect",
"salary": "$320,800",
"start_date": "2011/04/25",
"office": "Edinburgh",
"extn": "5421"
]
SOLUCIÓN
Utilice el formato predeterminado o utilice ajax.dataSrc
opción para definir la propiedad de datos que contiene datos de la tabla en la respuesta Ajax (data
por defecto).
Ver datos array ubicación para más información.
ENLACES
Consulte jQuery DataTables: errores comunes de la consola de JavaScript para obtener más detalles.
Bien, gracias a todos por la ayuda.
Sin embargo, el problema era mucho más fácil que eso.
Todo lo que necesito hacer es arreglar mi JSON para asignar el arraya una attribute llamado datos, de la siguiente manera.
"data": [
"name_en": "hello",
"phone": "55555555",
"email": "a.shouman",
"facebook": "https://www.facebook.com"
, ...]
valoraciones y reseñas
Puedes apoyar nuestro estudio fijando un comentario o puntuándolo te damos la bienvenida.