小弟我苦苦寻找用JAVASCRIPT 读取本地硬盘上的EXCEL文件数据。 找了半天发现下面的代码很普遍,可是我用来用去没有任何显示啊?到底怎么回事,请求帮助,怎么修改?还是我的设置有问题?
<script>
function readthis(){
var tempstr = "";
var filepath= document.all.upfile.value;
//alert(filepath);
var oxl = new activexobject("excel.application");
var owb = oxl.workbooks.open(filepath);
owb.worksheets(1).select();
var osheet = owb.activesheet;
try{
for(var i=2;i<46;i++){
if(osheet.cells(i,2).value =="null" || osheet.cells(i,3).value =="null" )
break;
var a = osheet.cells(i,2).value.tostring()=="undefined"?"":osheet.cells(i,2).value;
tempstr+=(" "+osheet.cells(i,2).value+
" "+osheet.cells(i,3).value+
" "+osheet.cells(i,4).value+
" "+osheet.cells(i,5).value+
" "+osheet.cells(i,6).value+"\n");
}
}catch(e){
//alert(e);
document.all.txtarea.value = tempstr;
}
document.all.txtarea.value = tempstr;
oxl.quit();
collectgarbage();
}
</script>
<html>
<input type="file" id="upfile" /><input type="button" onclick="readthis();" value="读取">
<br>
<textarea id="txtarea" cols=50 rows=10></textarea>
</html>
<script>
function readthis(){
var tempstr = "";
var filepath= document.all.upfile.value;
//alert(filepath);
var oxl = new activexobject("excel.application");
var owb = oxl.workbooks.open(filepath);
owb.worksheets(1).select();
var osheet = owb.activesheet;
try{
for(var i=2;i<46;i++){
if(osheet.cells(i,2).value =="null" || osheet.cells(i,3).value =="null" )
break;
var a = osheet.cells(i,2).value.tostring()=="undefined"?"":osheet.cells(i,2).value;
tempstr+=(" "+osheet.cells(i,2).value+
" "+osheet.cells(i,3).value+
" "+osheet.cells(i,4).value+
" "+osheet.cells(i,5).value+
" "+osheet.cells(i,6).value+"\n");
}
}catch(e){
//alert(e);
document.all.txtarea.value = tempstr;
}
document.all.txtarea.value = tempstr;
oxl.quit();
collectgarbage();
}
</script>
<html>
<input type="file" id="upfile" /><input type="button" onclick="readthis();" value="读取">
<br>
<textarea id="txtarea" cols=50 rows=10></textarea>
</html>
使用activex的话IE安全级别要降低。