Tengo una tabla de datos en la que debo cambiar algo, por ejemplo, quiero cambiar el título del contenido, pero este contenido está en la sexta página de la tabla. Cuando lo cambio, la tabla de datos se actualiza a la primera página. Lo que estoy tratando de hacer es mantener el número de página seleccionado y volver a llamarlo después de actualizar. He probado todas las soluciones, pero solo quiero guardar el número de página, nada más. ¿Es eso posible?
<script type="text/javascript"> $(function () { var dataTableoOBJ = $("#forumList").dataTable({ "lengthChange": true, "processing": true, "serverSide": true, "ajax": "/admin/forums/data", "createdRow": function (row, data, rowIndex) { $.each($('td', row), function (colIndex) { $(this).attr('data-id', data.id); }); }, 'columns': [{...}] }); }); </script>yo tambien he probado
"saveState": true y para borrar el estado al actualizar/recargar
if (performance.navigation.type == 1){ var table = $('#forumList').DataTable(); table.state.clear(); table.ajax.reload(); }pero solo está borrando los números de página. ¿Hay alguna forma de borrar la ordenación/ordenación/búsqueda/filtrado?
Tengo 2 soluciones para este problema.
Solución 1:
Agregar estos campos a la tabla de datos
"stateSave": true, stateLoadParams: function( settings, data ) { var a = data.order; if(data.search.search !== '' || a[0][0] !== 0 || data.length !== 10) { delete data.order; delete data.search; delete data.length; delete data.start; window.location.reload(); } if (data.start === 0) { delete data.order; delete data.search; delete data.length; delete data.start; } }Y acciones requeridas para actualizar la página
if (performance.navigation.type == 1){ var table = $('#forumList').DataTable(); table.state.clear(); table.ajax.reload(); }Solución 2:
Agregue "stateSave": true a la tabla de datos
Y acciones requeridas para actualizar la página
if (performance.navigation.type == 1){ var table = $('#forumList').DataTable(); table.state.clear(); table.search("").draw(); table.column( '0:visible' ).order( 'asc' ).draw(); table.page.len(10).draw(); }