日期:2014-05-16  浏览次数:20925 次

js实现excel输出时,无法提示“数据处理中”
[code=html]<script language="javascript">
function AutomateExcel() 

showsending();
try{ 
var oXL = new ActiveXObject("Excel.Application"); //创建应该对象 xls = new ActiveXObject("Excel.Application"); 
}catch(e){openBg(0);openTS(0); 
alert("请您打开ActiveX控件,具体操作:单击IE中的“工具”里“Internet 选项”,单击“安全”中的“自定义级别”中“ActiveX控件和插件”中,请选择第三项为启用即可。详细错误:"+e.message); 
return ; 

if (oXL == null){openBg(0);openTS(0); 
alert("创建Excel文件失败,可能是您的计算机上没有正确安装Microsoft Office Excel软件或浏览器的安全级别设置过高!"); 
return; 

var oWB = oXL.Workbooks.Add();//新建一个Excel工作簿 
var oSheet = oWB.ActiveSheet;//指定要写入内容的工作表为活动工作表 
var table = document.all.exceldata;//指定要写入的数据源的id 
var hang = table.rows.length;//取数据源行数 
var lie = table.rows(0).cells.length;//取数据源列数 

for (i=0;i <hang;i++){//在Excel中写行 
for (j=1;j <lie-1;j++){//在Excel中写列 
oSheet.Range( oSheet.Cells(1,1),oSheet.Cells(i+2,j+1)).HorizontalAlignment =-4108;//水平对齐方式 
oSheet.Range( oSheet.Cells(1,1),oSheet.Cells(i+2,j+1)).VerticalAlignment  =-4108; //垂直对齐方式
oSheet.Cells(i+2,j).Borders(1).LineStyle =1 
oSheet.Cells(i+2,j).Borders(2).LineStyle =1 
oSheet.Cells(i+2,j).Borders(3).LineStyle =1 
oSheet.Cells(i+2,j).Borders(4).LineStyle =1     
oSheet.Rows(i+2).RowHeight = 20;//设置行高
if(table.rows(i).cells(j).innerHTML.toLowerCase().indexOf( " <img ")!=-1){//如果其HTML代码包括 <img 
oSheet.Cells(i+2,j).Select();//选中Excel中的单元格 
oSheet.Pictures.Insert(table.rows(i).cells(j).getElementsByTagName( "img ")[0].src);//插入图片 

else{ 
oSheet.Cells(i+2,j).value = table.rows(i).cells(j).innerText;//向单元格写入值 



oXL.Visible = true; 
oXL.UserControl = true;
closesending(); 


function showsending(){
document.getElementById('popDiv').style.display='block';
document.getElementById('popIframe').style.display='block';
document.getElementById('bg').style.display='block';
}
function closesending(){
document.getElementById('popDiv').style.display='none';
document.getElementById('bg').style.display='none';
document.getElementById('popIframe').style.display='none';

}
</script>

html页面有<input type="button" value="导出到Excel" onClick="AutomateExcel();"style="width:90;"  "/>按钮。
      <div id="popDiv" class="sending" style="display: none;">
    <table width="200" height="80" border="0" cellspacing="2" cellpadding="0" bgcolor="#8FA8E9">
          <tr>
        <td bgcolor="#eeeeee" align="center">数据处理中, 请稍候...</td>
      </tr>
        </table>
  </div>
      <div id="bg" class="bg" style="display: none;"></div>
      <iframe id=