uncaught top read property offsettop cannot bottom javascript jquery datatables

javascript - top - Datatebles TypeError: c no está definido



offset() top in jquery (5)

Comprueba si has añadido

<thead></thead> <tbody></tbody>

He resuelto este problema añadiendo esos.

Así que básicamente la estructura debe ser como:

<table> <thead> <tr> <th></th> <th></th> </tr> </thead> <tbody> <tr> <td></td> <td></td> </tr> </tbody> </table>

Intento usar jQuery DataTables pero me sale el error.

TypeError: c no está definido

No sé qué está mal con mi código, ya que puedo ver que JSON se recupera correctamente y también está en el formato correcto, pero no sé qué hay de malo en que recibo el error anterior.

Mi JSON:

{"Data":[{"LOGIN":10184},{"LOGIN":10214},{"LOGIN":10180},{"LOGIN":10187},{"LOGIN":10179},{"LOGIN":10280},{"LOGIN":201},{"LOGIN":10238},{"LOGIN":10296},{"LOGIN":10312}]}

y mi código de DataTables:

$(document).ready(function() { $(''#tablename'').dataTable( { "processing": true, "serverSide": true, "ajax": { "type": "POST", "url": "https://test.com/api/db/select", "data": function ( json ) { return JSON.stringify( { "Sql": 12 } );}, "contentType": "application/json; charset=utf-8", "dataType": "json", "processData": true, beforeSend : function(xhr){ var access_token = sessionStorage.getItem(''access_token''); xhr.setRequestHeader(''Authorization'', ''Bearer '' + access_token); } }, "dataSrc": "Data", "columns": [ { "data": "LOGIN" } ] } ); } );


En algún momento, este problema de tipo llega al arreglar columnas desiguales / desiguales con HTML y columnas de datos.

"columns": [ null, null, null, {"orderable": false, "width":"2%"}, ],

Por encima de javascript definió 4 columnas y HTML con 5 columnas

<tr> <td>A</td> <td>B</td> <td>C</td> <td>D</td> <td>E</td> </tr>

Por lo tanto, tendrá que corregir / igualar la configuración de HTMl y Datatable del lado.

"columns": [ null, null, null, null, //Added New {"orderable": false, "width":"2%"}, ],


En mi caso, recibí el mismo error porque usé la función ajax.dataSrc (datos) para manipular los datos. Pero después de eso me olvidé de devolver los datos.

"dataSrc": function ( json ) { for ( var i=0, ien=json.data.length ; i<ien ; i++ ) { //somethings... } return json.data;// I forgot this line, then i got the error "TypeError: c is undefined" }

Después de unos minutos, verifiqué la documentación de la función ajax.dataSrc y noté que no tenía la declaración:

Devoluciones: matriz . Arreglo de datos que DataTables debe usar para dibujar la tabla

Espero que no tengas la misma distracción ...


en mi caso, tuve que eliminar el atributo colspan de un th dentro de thead y deshacerme del error;


dataSrc es una opción especial ajax de dataTables, que debe incluirse dentro del objeto ajax:

"ajax": { "dataSrc": "Data", //<--- place dataSrc here instead "type": "POST", ... }

Lo ha colocado fuera de ajax, y por eso dataTables no tiene idea de qué fuente utilizar (además de probar ciegamente la respuesta ajax) o dónde pertenece LOGIN .