Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

210
Visualizações
Use JavaScript DataTable con getCookie y SetCookie

Quiero eliminar los valores codificados de "pedido" y obtener esos valores de la función "getCookie". ¿Cómo puedo hacer esto? Cada vez que hago clic en una columna de la tabla, se ordena. Quiero almacenar ese orden de clasificación por función setCookie. Cuando la página se actualiza, quiero obtener ese orden de clasificación de la función getCookie. Gracias.

 $(document).ready(function () { let sortValue = getCookie("releaseTicketSort") var oTable = $('#allTicketsTable').DataTable({ "pageLength": 5, "lengthChange": true, "fixedHeader": true, "lengthMenu": [ [5, 10, 25, 50, -1], [5, 10, 25, 50, "All"] ], "order": [[2, 'asc']], columnDefs: [ { width: 150, targets: 5 }, { className: "dt-center", targets: 5} ], fnDrawCallback: function (settings){ console.log(settings.oSavedState.order) var orderVec = settings.oSavedState.order setCookie("releaseTicketSort", orderVec, exp=1000) getCookie("releaseTicketSort") } }); }); function setCookie(c_name,value,exdays) { var exdate=new Date(); exdate.setDate(exdate.getDate() + exdays); var c_value=escape(value) + ((exdays==null) ? "" : "; expires="+exdate.toUTCString()); document.cookie=c_name + "=" + c_value; } function getCookie(c_name) { var i,x,y,ARRcookies=document.cookie.split(";"); for (i=0;i<ARRcookies.length;i++) { x=ARRcookies[i].substr(0,ARRcookies[i].indexOf("=")); y=ARRcookies[i].substr(ARRcookies[i].indexOf("=")+1); x=x.replace(/^\s+|\s+$/g,""); if (x==c_name) return unescape(y); } }
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

En lugar de usar cookies, sugeriría usar las funciones de ahorro de estado integradas en DataTables (suponiendo que esté usando DataTables v1.10 o posterior).

Para su escenario en el que solo desea guardar el estado de clasificación entre cargas de página (pero no paginación ni filtrado), entonces la opción stateSaveParams es probablemente el enfoque más simple:

 $(document).ready(function() { var table = $('#example').DataTable( { stateSave: true, stateSaveParams: function (settings, data) { data.start = 0; data.search.search = ''; } } ); } );

Las opciones anteriores hacen que todos los datos de estado de la tabla se almacenen en el almacenamiento local de su navegador. Una entrada típica contendrá datos en la siguiente estructura:

 { "time": 1651180700425, "start": 0, "length": 10, "order": [ [0, "asc"] ], "search": { "search": "", "smart": true, "regex": false, "caseInsensitive": true }, "columns": [{ "visible": true, "search": { "search": "", "smart": true, "regex": false, "caseInsensitive": true } }, . . . { "visible": true, "search": { "search": "", "smart": true, "regex": false, "caseInsensitive": true } }] }

La opción stateSaveParams anulará los valores start y search.search para que se guarden como sus valores predeterminados (primera página y sin término de búsqueda) en lugar de los valores que el usuario haya proporcionado:

 stateSaveParams: function (settings, data) { data.start = 0; data.search.search = ''; }

Nada más se modifica, incluidos los valores de clasificación. DataTables recupera automáticamente estos datos guardados del almacenamiento local, debido a la opción stateSave: true .

Por lo tanto, no necesita guardar explícitamente los datos de clasificación; solo necesita "desguardar" explícitamente las otras opciones que en realidad no desea conservar/restaurar.

Antecedentes y referencia: Más información sobre el almacenamiento local .

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda