原生js获取execl里面的值 主要使用ActiveXObject
今天一个程序员给了一个excel表,里面有一百多条数据,叫我一个一个数据的复制到系相应的函数里面比如 put("gaga1","gaga2"),这样一句话,要我复制一百多遍,fuck。。。我就说你自己用java读取不就可以啦!他就说用java要运行半个小时以上,我就心里想fuck,是你不怎么懂java吧!此时自己心中的几百万头草泥马在奔腾!!!!!!
于是自己就去找了一个js方法来读取excel里面的数据,加以修改都不用半个小时!真是fuck!
execl里面的数据大概是这样的:
实现输出的效果是:
js源码:
function readThis(){
var tempStr = "";
var filePath= document.all.upfile.value;
var oXL = new ActiveXObject("Excel.application");
var oWB = oXL.Workbooks.open(filePath);
oWB.worksheets(1).select();
var len = 100; // 要取到的多少条数据
var oSheet = oWB.ActiveSheet;
try{
for(var i=1;i<= len;i++){
tempStr+=("put(\""+oSheet.Cells(i,1).value+"\",\""+oSheet.Cells(i,2).value+"\");")+"<br>"; // 1和2分别代表第一列和第二列
}
}catch(e){
document.all.txtArea.innerHTML = tempStr;
}
document.all.txtArea.innerHTML = tempStr;
oXL.Quit();
CollectGarbage();
}
html源码:
<input type="file" id="upfile" /><input type="button" onclick="readThis();" value="读取">
<div id="txtArea" style="width:500px;height:500px;"></div>
因为 ActiveXObject 只有IE支持 所以运行的时候只能使用IE来运行,目前想到就此方法了!
原生js获取execl里面的值 主要使用ActiveXObject的更多相关文章
- 函数语法:原生JS获取数组的索引值index
var lis = document.getElementsByTagName("li"); for(var i=0;i<lis.length;i++) { lis[i].i ...
- 原生js获取宽高与jquery获取宽高的方法的关系
说明:1.因为获取高度的情况跟获取宽度的情况一样,所以以下只说获取宽度的情况. 2.以下所说的所有方法与属性所返回的值都是不带单位的. 3.为了方便说明,以下情况采用缩写表示: obj -> ...
- 原生JS的使用,包括jquery和原生JS获取节点、jquery和原生JS修改属性的比较
一.前言 相比于JS这条直达终点.满是荆棘的小路,jquery无疑是康庄大道了,足够的简洁.易用给了它辉煌的地位.然而,毕竟是绕着道的插件,当小路走着走着变成大路的时候,曾经的大路也就失去了他自身的优 ...
- 原生js获取元素的样式信息
工作中经常会需要获取DOM元素的样式,之前都是通过jquery的css()方法,现在总结一下通过原生js获取元素样式的方法. obj.style js var _width = obj.style.w ...
- 原生js获取鼠标坐标方法全面讲解-zmq
原生js获取鼠标坐标方法全面讲解:clientX/Y,pageX/Y,offsetX/Y,layerX/Y,screenX/Y 一.关于js鼠标事件综合各大浏览器能获取到坐标的属性总共以下五种:eve ...
- 兼容各版本浏览器,封装原生Js获取ClassName
web前端开发工作中常常会用到获取元素的className,用jQuery的$(".class")方法也可以获取className,但是有时候牵扯到数据而影响的加载顺序的原因会获取 ...
- js获取单选框的值
js获取单选框的值 var lx= $("input[name='lx']:checked").val();
- 原生JS获取DOM 节点到浏览器顶部的距离或者左侧的距离
关于js获取dom 节点到浏览器顶/左部的距离,Jquery里面有封装好的offset().top/offset().left,只到父级的顶/左部距离position().top/position() ...
- 关于Echarts的原生js获取DOM元素与动态加载DOM元素的冲突问题
1.前言: 最近在做的看板项目,因为需要循环加载后台数据,并且用Echarts做数据呈现,所以jQuery和angular等库统统靠边站,Echarts用的是原生js获取DOM元素,至于诸多不兼容等深 ...
随机推荐
- html5引用公共头尾
<embed type="text/html" src="head.html" />
- 基础-训练营-day1~day5
基础 大纲 变量: 声明.初始化.使用.命名 数据类型: int.long.double.boolean.char.String 运算符: 赋值.算术.关系.逻辑 ...
- bind和unbind事件的应用
1.bind 先从一动画的示例看起,如图: 而图中表示的mouseout(移出).mouseover(移入)事件的操作,比较简单,具体代码如下: 从中我可以得出bind()的语法: $().bind( ...
- C语言:十进制进制转换为其他进制(思想:查表法)
// // main.c // Hex conversion // // Created by ma c on 15/7/22. // Copyright (c) 2015年 bjsxt. A ...
- kinect for windows sdk
https://msdn.microsoft.com/library/dn799271.aspx
- php 使用 Memcache 例子
代码写成后不断的往数据库插入数据,可以发现 当set时:理论上速度变慢,但数据同步 当get时:理论上速度变快,但数据不同步,需要缓存失效后重新请求set方法 <?php $mem = new ...
- Power-BI仪表盘文本框排行分析设计要点
例如:我在BI软件中做一个商品类别TOP5排行. 文本框默认绑定第一列,但是没显示是那个品类. 这里我们需要做几个操作来进行优化. 1.把品类显示出来. 在序列中找到标题进行显示,如果位置有重叠可以进 ...
- system执行shell命令
system - execute a shell command #include <stdlib.h> int system (const char *command); 描述 syst ...
- python_条件、循环语句
1. python中语句块如何定义: 在Python中,冒号(:)用来标识语句块的开始,块中的每一个语句都是缩进的.当回退到和已经闭合的块一样的缩进量时,就表示当前块已经结束. 默认推荐缩进 ...
- python_字符串
1. 字符串的格式化 格式: 说明: (1)转换说明符 (2)格式化操作符右操作数可以是任何东西,如果是元组的话,每一个元素都会被单独格式化. 2. 字符串常用的方法 (1)find int = fi ...