Jquery spreadsheet
To develop a web-based spreadsheet using jQuery and Jspreadsheet, it is necessary to incorporate the following polyfill starting from version 10.
<html>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
<script src="https://jspreadsheet.com/v10/jspreadsheet.js"></script>
<link rel="stylesheet" href="https://jspreadsheet.com/v10/jspreadsheet.css" type="text/css" />
<script src="https://jsuites.net/v5/jsuites.js"></script>
<link rel="stylesheet" href="https://jsuites.net/v5/jsuites.css" type="text/css" />
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Material+Icons" />
<div id="spreadsheet"></div>
<br>
<input type="button" value="Add new row" id="addrow"/>
<input type="button" value="Add new col" id="addcol"/>
<script>
// Polyfill
(function($){
$.fn.jspreadsheet = $.fn.jexcel = function(mixed) {
let container = $(this).get(0);
if (! container.jspreadsheet) {
return jspreadsheet($(this).get(0), arguments[0]);
} else {
if (typeof(arguments[0]) == 'number') {
let n = arguments[0];
let i = 2;
} else {
let n = 0;
let i = 1;
}
return container.jspreadsheet[n][mixed].apply(
container.jspreadsheet[n],
Array.prototype.slice.call(arguments, i)
);
}
};
})(jQuery);
let instance = $('#spreadsheet').jspreadsheet({
worksheets: [{
minDimensions:[8,10],
}],
license: 'N2E2MjZjYWFkMjIwZWJkNWJkODEzOGMzYmM4MWY5ZTE5YWMxYzk0ZWNjMTlhOTA2OGNjYTA5NTBkMjk3MDAxMjZkYTk3NTdjZDk5ZDlhYTNjNzNiYWFkMzQwZWY2OWZhMGY5MzA0MjAwMDVkM2JhOGJlNjkxYTE2MTc3ZGNmMjksZXlKamJHbGxiblJKWkNJNklpSXNJbTVoYldVaU9pSktjM0J5WldGa2MyaGxaWFFpTENKa1lYUmxJam94TnpZd01qWXhNelEwTENKa2IyMWhhVzRpT2xzaWFuTndjbVZoWkhOb1pXVjBMbU52YlNJc0ltTnZaR1Z6WVc1a1ltOTRMbWx2SWl3aWFuTm9aV3hzTG01bGRDSXNJbU56WWk1aGNIQWlMQ0p6ZEdGamEySnNhWFI2TG1sdklpd2lkMlZpWTI5dWRHRnBibVZ5TG1sdklpd2liRzlqWVd4b2IzTjBJbDBzSW5Cc1lXNGlPaUl6TkNJc0luTmpiM0JsSWpwYkluWTNJaXdpZGpnaUxDSjJPU0lzSW5ZeE1DSXNJbll4TVNJc0ltTm9ZWEowY3lJc0ltWnZjbTF6SWl3aVptOXliWFZzWVNJc0luQmhjbk5sY2lJc0luSmxibVJsY2lJc0ltTnZiVzFsYm5Seklpd2lhVzF3YjNKMFpYSWlMQ0ppWVhJaUxDSjJZV3hwWkdGMGFXOXVjeUlzSW5ObFlYSmphQ0lzSW5CeWFXNTBJaXdpYzJobFpYUnpJaXdpWTJ4cFpXNTBJaXdpYzJWeWRtVnlJaXdpYzJoaGNHVnpJaXdpWm05eWJXRjBJbDBzSW1SbGJXOGlPblJ5ZFdWOQ=='
});
document.getElementById("addrow").onclick = () => instance[0].insertRow();
document.getElementById("addcol").onclick = () => instance[0].insertColumn();
</script>
</html>