本帖最后由 Fiooona 于 2020-2-7 11:54 编辑
背景:要导入一个表单,导入表单后复制表单中的某个sheet页
思路:获取被拷贝的sheet页的JSON字符串,修改要导入的表单的JSON,在JSON层面增加新的表单,新表单内容为要拷贝的表单内容。
核心代码:
- reader.onload = function(evt){
- var fileString = evt.target.result;
- var jsonObj = JSON.parse(fileString);
- if(jsonObj.MyData){
- alert(jsonObj.MyData);
- }
- var tempObj = JSON.stringify(jsonObj.sheets["sheet1"]); //要复制的表单名称为sheet1
- jsonObj.sheets["sheet1复制1"] = JSON.parse(tempObj); // 复制一份表单命名为“sheet1复制1”
- jsonObj.sheets["sheet1复制1"].name = "zhexiantu";
- jsonObj.sheets["sheet1复制1"].index = 4;
- jsonObj.sheets["sheet1复制2"] = JSON.parse(tempObj);// 复制一份表单命名为“sheet1复制2”
- jsonObj.sheets["sheet1复制2"].name = "data11";
- jsonObj.sheets["sheet1复制2"].index = 5;
- jsonObj.sheets["sheet1复制3"] = JSON.parse(tempObj);// 复制一份表单命名为“sheet1复制3”
- jsonObj.sheets["sheet1复制3"].name = "data22";
- jsonObj.sheets["sheet1复制3"].index = 6;
复制代码 实现效果:
复制了名为sheet1的sheet页,导入后新的表单中增加的3个sheet页:sheet1复制1、sheet1复制2、sheet1复制3,内容为复制的sheet1的内容。
|
|