Skip to main content
Module

x/sheetjs/demos/xhr/xhr.html

πŸ“— SheetJS Community Edition -- Spreadsheet Data Toolkit
Extremely Popular
Latest
File
<!DOCTYPE html><!-- xlsx.js (C) 2013-present SheetJS http://sheetjs.com --><!-- vim: set ts=2: --><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>SheetJS Live Demo</title><style>a { text-decoration: none }</style></head><body><pre><b><a href="http://sheetjs.com">SheetJS Data Preview Live Demo</a></b>
<a href="https://github.com/SheetJS/js-xlsx">Source Code Repo</a><a href="https://github.com/SheetJS/js-xlsx/issues">Issues? Something look weird? Click here and report an issue</a><br/><div id="fileurl"></div></pre><div id="htmlout"></div><br /><button id="ulbutton">Click here to upload the modified table</button><pre><div id="outfile"></div></pre><script src="xlsx.full.min.js"></script><script>var demo = 'xhr', book = 'xlsx';
if(!window.XMLHttpRequest || typeof Uint8Array === 'undefined') throw new Error("This demo is not supported in your browser");
function process_wb(wb) { console.log(wb); htmlout.innerHTML = XLSX.utils.sheet_to_html(wb.Sheets[wb.SheetNames[0]], {editable:true}).replace("<table", '<table id="table" border="1"');}
var url = "sheetjs.xlsx";document.getElementById('fileurl').innerHTML = '<a href="' + url + '">Download original file</a>';document.getElementById('outfile').innerHTML = '<a href="' + demo + '.' + book + '">Download new file</a>';
{ var req = new XMLHttpRequest(); req.open("GET", url, true); req.responseType = "arraybuffer"; req.onload = function(e) { var data = new Uint8Array(req.response); var wb = XLSX.read(data, {type:"array"}); process_wb(wb); }; req.send();}
document.getElementById('ulbutton').onclick = function() { var wb = XLSX.utils.table_to_book(document.getElementById('htmlout')); console.log(wb); var fd = new FormData(); var data = XLSX.write(wb, {bookType:book, type:'array'}); console.log(data); fd.append('data', new File([data], demo + '.' + book)); var req = new XMLHttpRequest(); req.open("POST", "/upload", true); req.send(fd);};</script><script type="text/javascript"> var _gaq = _gaq || []; _gaq.push(['_setAccount', 'UA-36810333-1']); _gaq.push(['_trackPageview']);
(function() { var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s); })();</script></body></html>