Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

255
Views
Obtener respuesta ajax dentro de dataTable()

Este es mi código existente para la paginación aquí. Recibo un error porque la lista de roleList no está definida.
No sé cómo usar la respuesta ajax dentro de dataTable() . ¿Qué hice mal? Me llamó la atención esta parte durante los últimos 3 días, sin embargo, busqué una solución durante mucho tiempo, pero no pude encontrar una.

 function empRoles() {debugger table = $('#mydata').DataTable({ "ajax": { "type": 'POST', "dataType": 'json', "url": '/Admin/getRolesList', "dataSrc": function (response) { var roleList = response; console.log(roleList) }, "data": { "json": JSON.stringify(roleList) } }, "columns": [{ "data": "sNo" }, { "data": "roleName", "className": "roleName" }, { "data": "roleName", "render": (data, type, row, meta) => ` <button class="btn edit btn-info" id="edit${row.sNo}"> <i class="fa fa-pencil"></i> Edit </button> <button class="btn update btn-success" id="update${row.sNo}"> <i class="fa fa-floppy-o"></i> Update </button> <button class="btn dlt btn-danger" data-toggle="modal" data-target="#confirm" id="delete${row.sNo}"> <i class="fa fa-trash-o"></i> Delete </button> ` , "sortable": false }], "createdRow": (row, data, dataIndex) => { $(row).attr("id", "row" + data.sNo); $('td:eq(1)', row).attr("id", "name" + data.sNo); } }); }

Algún consejo por favor..

about 4 years ago · Santiago Trujillo
2 answers
Answer question

0

Si entiendo correctamente el problema, creo que la solución más simple sería simplemente inicializar la variable roleList fuera de las opciones.

 function empRoles() { var roleList = []; // or whatever the initial data value should be var table = $('#mydata').DataTable({ // ... "dataSrc": function (response) { roleList = response; console.log(roleList) }, "data": { "json": JSON.stringify(roleList) } // ...
about 4 years ago · Santiago Trujillo Report

0

La parte del código

 "data": { "json": JSON.stringify(roleList) }

se ejecuta antes

 "dataSrc": function (response) { roleList = response; console.log(roleList) }

Por lo tanto, la variable roleList no está disponible para ajax.data.

Puede validar esto poniendo puntos de interrupción en su navegador.

Aquí básicamente está tratando de acceder a la variable de entrada y devolverla al servidor. Lo mismo se puede lograr mediante la propia sección ajax personalizada utilizando funciones como se menciona en este enlace:

https://datatables.net/reference/option/ajax

about 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!