Data Persistence
With the persistence directive, each change in the data will be sent to a remote URL.
<html>
<script src="https://jspreadsheet.com/v7/jspreadsheet.js"></script>
<script src="https://jsuites.net/v5/jsuites.js"></script>
<link rel="stylesheet" href="https://jspreadsheet.com/v7/jspreadsheet.css" type="text/css" />
<link rel="stylesheet" href="https://jsuites.net/v5/jsuites.css" type="text/css" />
<div id="spreadsheet"></div>
<script>
let mySpreadsheet = jspreadsheet(document.getElementById('spreadsheet'), {
url:'/jspreadsheet/books.json',
columns: [
{
type: 'autonumber',
width: '50px',
title: 'Code',
name: 'id',
readOnly: true,
primaryKey: true
},
{
type: 'text',
width: '80px',
title:'Image',
name:'thumbnailUrl'
},
{
type: 'text',
width: '200px',
title:'Title',
name:'title'
},
{
type: 'text',
width: '55px',
title:'Pages',
name:'pageCount'
},
{
type: 'calendar',
width: '90px',
title:'Published',
name: 'publishedDate'
},
{
type: 'text',
width: '200px',
title:'Author',
name:'authors'
},
{
type: 'dropdown',
width: '180px',
title:'Categories',
name:'categories',
source:['Internet','Web Development', 'Java', 'Mobile', 'Open Source'],
multiple:true
},
],
allowComments:true,
persistance: '/jspreadsheet/save',
updateTable: function(instance, cell, col, row, val, label, cellName) {
if (col == 1) {
if (! val) {
cell.innerHTML = '<img src="https://images-na.ssl-images-amazon.com/images/I/21%2Bwfxx2lyL._SX319_BO1,204,203,200_.jpg" style="width:60px;">';
} else {
cell.innerHTML = '<img src="' + val + '" style="width:60px;">';
}
}
cell.style.overflow = 'hidden';
},
onevent:function() {
console.log(arguments);
},
license: 'Y2Q0ZjM4M2MxYmI0OGJhOTg5MGRiNmY3Y2I3ZWY1MDcxZGNjNjhkYTU2NzNhYjgwM2M4YjUxNGJiNThhMDQ3ODgwYTQ3MGMzOTI1MDQ1NDJhZTJlOGIzZDIyMzk3NjM2YjRjYTIwMDA4NTE5MzMwYWQ2NzRiNWEyYzBlNDkwMGIsZXlKamJHbGxiblJKWkNJNklpSXNJbTVoYldVaU9pSktjM0J5WldGa2MyaGxaWFFpTENKa1lYUmxJam94TnpZd01qUTRNelE0TENKa2IyMWhhVzRpT2xzaWFuTndjbVZoWkhOb1pXVjBMbU52YlNJc0ltTnZaR1Z6WVc1a1ltOTRMbWx2SWl3aWFuTm9aV3hzTG01bGRDSXNJbU56WWk1aGNIQWlMQ0p6ZEdGamEySnNhWFI2TG1sdklpd2lkMlZpWTI5dWRHRnBibVZ5TG1sdklpd2liRzlqWVd4b2IzTjBJbDBzSW5Cc1lXNGlPaUl6TkNJc0luTmpiM0JsSWpwYkluWTNJaXdpZGpnaUxDSjJPU0lzSW5ZeE1DSXNJbll4TVNJc0ltTm9ZWEowY3lJc0ltWnZjbTF6SWl3aVptOXliWFZzWVNJc0luQmhjbk5sY2lJc0luSmxibVJsY2lJc0ltTnZiVzFsYm5Seklpd2lhVzF3YjNKMFpYSWlMQ0ppWVhJaUxDSjJZV3hwWkdGMGFXOXVjeUlzSW5ObFlYSmphQ0lzSW5CeWFXNTBJaXdpYzJobFpYUnpJaXdpWTJ4cFpXNTBJaXdpYzJWeWRtVnlJaXdpYzJoaGNHVnpJaXdpWm05eWJXRjBJbDBzSW1SbGJXOGlPblJ5ZFdWOQ==',
});
</script>
</html>