回复 6楼dudubear的帖子
当前调查进度,导入代码:
- $("#import_excel").click(function () {
- try {
- var dataOnly = $('#import_excel_dataOnly').prop('checked') ? 1 : 0,
- dataAndFormulasOnly = $('#import_excel_dataAndFormulasOnly').prop('checked') ? 3 : 0,
- rowHeaders = $('#import_excel_rowHeaders').prop('checked') ? 4 : 0,
- columnHeaders = $('#import_excel_columnHeaders').prop('checked') ? 8 : 0,
- rowColumnHeaders = $('#import_excel_rowcolumnHeaders').prop('checked') ? 12 : 0,
- doNotRecalculateAfterLoad = $('#import_excel_donotrecalculateafterload').prop('checked') ? 1024 : 0;
- var excelOpenFlags = (dataOnly | dataAndFormulasOnly | rowHeaders | columnHeaders | rowColumnHeaders | doNotRecalculateAfterLoad);
- var password = $('#password').val();
- var theFile = $("#import_excel_file")[0].files[0];
- var serverUrl = $("#serviceUrl").val() + "/xsapi/import/";
- var formData = new FormData();
- formData.append("ExcelOpenFlags", excelOpenFlags);
- formData.append("Password", password);
- formData.append("file", theFile);
- if (serverUrl && theFile) {
- showLoading();
- importFile(serverUrl, formData, function (jsonString) {
- var spreadJson = JSON.parse(jsonString);
- if (spreadJson.spread) {
- hideLoading();
- var spread = $("#ss").wijspread("spread");
- spread.fromJSON(spreadJson.spread);
- } else if (spreadJson.error) {
- hideLoading();
- alert(spreadJson.error);
- }
- }, function (error) {
- alert(error);
- });
- }
- } catch (ex) {
- alert(ex);
- }
- });
复制代码
var theFile = $("#import_excel_file")[0].files[0]; 这句代码用于设置 Excel 对应的 Javascript 对象 File。
所以,我们目前只需要把 Url 直接包装成 File 对象即可设置给 SpreadJS。关于包装文件为 File 对象的资源网上有很多,可以尝试搜索下。 |