论坛管理员 发表于 2018-10-29 16:02:59

将excel里的数据导入到表单的数据网格中去

1、表单数据网格设计,原料名称、规格、数量、单价、金额的标题列分别对应标识ylmcList、ggList、slList、djList、jeList
http://www.o2oa.net:20020/x_file_assemble_control/jaxrs/file/8c6dc2a8-4e49-494f-a0e0-f4ed69f21db6/download/stream
2、excel样式
http://www.o2oa.net:20020/x_file_assemble_control/jaxrs/file/4d4d5309-fc8f-40df-bdf7-1ae1871b586f/download/stream
var filePath="D:\\mytest.xls"; //要读取的xls
var sheet_id=1; //读取第1个表
var row_start=2; //从第1行开始读取
var tempStr='';
try{
    var oXL = new ActiveXObject("Excel.application"); //创建Excel.Application对象
}catch(err)
{
    alert("错误:"+err);
}
var oWB = oXL.Workbooks.open(filePath);
oWB.worksheets(sheet_id).select();
var oSheet = oWB.ActiveSheet;
var colcount=oXL.Worksheets(sheet_id).UsedRange.Cells.Rows.Count ;//总共多少条数据
this.form.get("yllb").setData({});//先把原料列表清空
var data=new Array();
//拼装数据网格的data数据
for(var i=row_start;i<=colcount;i++){
    op = {
      "ylmcList":{"ylmc":oSheet.Cells(i,1).value},
      "ggList":{"gg":oSheet.Cells(i,2).value},
      "slList":{"sl":oSheet.Cells(i,3).value},
      "djList":{"dj":oSheet.Cells(i,4).value},
      "jeList":{"je":oSheet.Cells(i,5).value}
    };
    data=op;
}
op2 = {
    "data":data,
    "total":{}
};
this.form.get("yllb").setData(op2);//给数据网格赋值
alert("导入完成!");

论坛管理员 发表于 2020-4-17 19:14:12

有点看不懂您的问题
以后麻烦问题发新贴
还有您的问题应该是数据的导入导出。
您可以参考一下帖子
http://www.o2oa.net/x_desktop/forum.html?app=ForumDocument&id=9d7b92ab-1f5f-45da-aad2-d7555e8f2be3

lxl 发表于 2020-4-17 09:22:38

1 按着你提供的这种方式导入以后,数据网格的加减行的地方,添加一行后不能打对号确认本行内容了
2原数据表格中个别输入框设计的点击事件,并没有添加到新添加的数据行中

3有没有办法通过JS添加一行数据中
麻烦帮忙解答一下   多谢了

qaz6908768 发表于 2020-11-16 10:49:37

示例代码运行时浏览器报错ActiveXObject is not defined,给出的帖子我这边点进去怎么没内容啊

论坛管理员 发表于 2020-11-17 11:02:28

您可以参考一下这个
https://zhidao.baidu.com/question/2080233327899107868.html
或者自行查阅一下报错的原因!
页: [1]
查看完整版本: 将excel里的数据导入到表单的数据网格中去