forked from sheetjs/sheetjs
		
	
		
			
				
	
	
		
			78 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
			
		
		
	
	
			78 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
| <!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();
 | |
| 	fd.append('file', demo + '.' + book);
 | |
| 	fd.append('data', XLSX.write(wb, {bookType:book, type:'base64'}));
 | |
| 	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>
 |