Estoy tratando de enviar objetos en un almacenamiento de sesión con un botón llamado ".buttonClipboard". Pero solo envía uno. Quiero enviar más objetos de la mesa.
Este es el código:
$('#buttonsDocumentation .buttonClipboard').on('click', function(){ clipboard = JSON.parse(sessionStorage.getItem("clipboard")); if($.inArray(rowSelected[0], clipboard) < 0){ if(clipboard == null){ clipboard = []; } clipboard.push(rowSelected[0]); sessionStorage.setItem('clipboard', JSON.stringify(clipboard)); } testClipboard(); });¿Cómo es?
PD: rowSelected[0] es como la identificación de la fila del objeto.
Tengo una alternativa, pero solo funciona en una tabla (tabDocument) en lugar de dos (tabSearch):
$('#buttonsDocumentacion .botonClipboard').on('click', function(){ var idsClip=[]; if(clipboard = tableDocument.rows('.selected').data()){ for(var i=0; i<clipboard.length; i++){ idsClip.push(clipboard[i][0]); } } sessionStorage.setItem('clipboard', JSON.stringify(idsClip)); compruebaClipboard(); })Para agregar varias filas seleccionadas al portapapeles, debe enviarlas todas en push() , no solo en selectedRow[0] . Puede usar la sintaxis extendida para esto:
clipboard.push(...selectedRow);