公司系统需开发一项选择旅客,由Excel自动导入旅客资料的功能 不想把Excel上传到服务器解析,所以用了JS读取,AJAX方式导入 function Import_recp(){ var PAX_DR = ''; var mylen = document.FORM1.elements.length; for(var i=0;i<mylen;i++) { if ((document.FORM1.elements[i].name.indexOf('chkMe') == 0) && (document.FORM1.elements[i].checked == true)){ PAX_DR += document.FORM1.elements[i].value+','; } } if(PAX_DR==""){ alert('请至少选择一名旅客'); return false; } document.getElementById("getImportPath").click(); var path = document.getElementById("getImportPath").value; if( path =="" || path.length < 4 ){ return false; } if(path.substring(path.length-3,path.length)!="xls"){ alert("请选择需汇入旅客资料的xls文件"); return false; } recp_info = ReadExcel(path); if( recp_info == "" ){ return false; } var post = document.FORM1.OP_SQ.value + ":" + PAX_DR + ":" + recp_info; post = encodeURIComponent(encodeURIComponent(post)); post = "info=" + post; var xmlHTTP = new ActiveXObject("Microsoft.XMLHTTP"); var URL = "旅客资料导入执行页"; xmlHTTP.open("POST",URL,false); xmlHTTP.setRequestHeader("Cache-Control","no-cache"); xmlHTTP.setRequestHeader("Content-Type","application/x-www-form-urlencoded;"); xmlHTTP.send(post); if (xmlHTTP.readyState == 4){ if (xmlHTTP.status == 200) { if(xmlHTTP.responseText=="ok"){ //刷新页面window.location.href=""; }else{ alert("汇入旅客资料错误!"); } } else{ alert("xmlHTTP.status="+xmlHTTP.status); } } else{ alert("xmlHTTP.readyState="+xmlHTTP.readyState); } } function ReadExcel(filePath) { var tempStr = ""; var oXL = null; try { var oXL = new ActiveXObject("Excel.application"); } catch(e) { alert( "要使用此功能,您必须/n1.安装Excel电子表格软件!/n2.浏览器需添加此站点至可信站点!/n3.浏览器须允许执行使用“ActiveX 控件”!"); return ""; } var oWB = oXL.Workbooks.open(filePath); oWB.worksheets(1).select(); var oSheet = oWB.ActiveSheet; try{ for(var i=2;i<200;i++){ if(!oSheet.Cells(i,3).value && !oSheet.Cells(i,4).value && !oSheet.Cells(i,6).value) break; for(var j=1;j<=10;j++){ oSheet.Cells(i,j).value.toString(); if(oSheet.Cells(i,j).value){ tempStr = tempStr + oSheet.Cells(i,j).value; }else{ tempStr = tempStr + ""; } tempStr = tempStr + "=="; } tempStr+="||"; } }catch(e) { alert("打开excel文件时发生错误!"); tempStr = ""; } oXL.Quit(); return tempStr; } <input type="file" style="display:none;" mce_style="display:none;" value="" name="getImportPath" id="getImportPath">