做个隐藏的DIV,把TABLE的outerHTML中的INPUT换成值,再给DIV,导出的时候导DIV

解决方案 »

  1.   

    我现在的做法,是在td里放置一个display:none的span,内容等于TextBox
    然后导出,最后在Excel删除Shapes
    这个方法和1楼的做法,都比较复杂,我觉得用Excel的方法解决应该更方便才对,没有这方面的方法吗?btw:刚刚搜索又得到了Excel中取TextBox值的方法:
    Worksheet.Shapes.Item(1).OLEFormat.Object.Object.Value现在如果能用Excel查找这个TextBox所在的Cell,问题就解决了,
    请大侠继续指点!
      

  2.   

    不是很复杂啊<table border="1" id="table1">
    <tr>
    <td>
    asdasdasd
    </td>
    <td>
    <input>
    </td>
    </tr>
    <tr>
    <td>
    asdasdasd
    </td>
    <td>
    <input>
    </td>
    </tr>
    </table>
    <input name="haha" type="button" value="按" onclick="show()">
    <div id="div1" style="display:none">&nbsp;</div>
    <script language="javascript">
    function show(){
    var objDiv=document.getElementById("div1")
    objDiv.innerHTML=document.getElementById("table1").outerHTML
    var objInputs=objDiv.getElementsByTagName("input")
    for(var i=objInputs.length-1;i>-1;i--)
    {
    objInputs[i].outerHTML=objInputs[i].value
    }
    var oRangeRef = document.body.createTextRange(); 
    oRangeRef.moveToElementText(objDiv); 
    oRangeRef.execCommand("Copy"); 
    var appExcel = new ActiveXObject("Excel.Application"); 
    var xlsWorkbook = appExcel.Workbooks.Add();
    var xlsSheet = xlsWorkbook.ActiveSheet; 
    xlsSheet.Paste(); 
    appExcel.Visible = true; 
    appExcel.UserControl = true;
    }
    </script>
      

  3.   

    多谢 天外水火(我要多努力)不过,我也想借机学习一下Excel,呵呵希望有熟悉Excel操作的XD指点,在Js如何查找Excel的TextBox所在的Cell?