没有细看你的代码, 不过你的eval显然不是最好的代码:
eval("var mdata = document.all.div" + obj.substr(6,1) + ".style.display");
==>
var mdata = document.getElementById("div"+ obj.substr(6, 1)).style.display;//若是不考虑浏览器兼容性的话你也可以用:
var mdata = document.all("div"+ obj.substr(6,1)).style.display;

解决方案 »

  1.   

    这个跟你的策略有关系的,我也没仔细看你的代码,我想你应该想的是逻辑问题,梅说的这个是有道理的,eval通常的用法是给可变的变量的,通常大家看习惯了getelementbyid("xxx") 其实是这样的"xxx"可以用变量的
    getElementById(nnn)
     nnn="xxx"  
    或者是
    a="x" nnn="xx"+a很多人也许对request.form("xxx")也是有这样的困惑的其实道理是一样的用request.form(nnn)代替也是一样的,做程序一定不要想得太死了
      

  2.   

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <HTML>
    <HEAD>
    <TITLE> New Document </TITLE>
    <META NAME="Generator" CONTENT="EditPlus">
    <META NAME="Author" CONTENT="">
    <META NAME="Keywords" CONTENT="">
    <META NAME="Description" CONTENT="">
    </HEAD><BODY>
    <TABLE id="tbDetailUsed">
    <tr>
          <td><input type="file" name="a" ></td>
          <td><input type="file" name="b" ></td>
          <td><input value="add"  id="add" onclick="addDetailProcess()" type=button></td>
          <td><input value="del"  id="del" onclick="delDetailProcess()" type=button></td>
        </tr>
        <tr>
          <td><input type="file" name="a" ></td>
          <td><input type="file" name="b" ></td>
          <td><input value="add"  id="add" onclick="addDetailProcess()" type=button></td>
          <td><input value="del"  id="del" onclick="delDetailProcess()" type=button></td>
        </tr></TABLE>
    <SCRIPT LANGUAGE="JavaScript">
    <!--
    function addDetailProcess()
    {
    var crrentrow = event.srcElement.parentNode.parentNode.rowIndex;
    var crrentrowHTML = document.all("tbDetailUsed").rows[crrentrow].innerHTML;
    var newtr = document.all("tbDetailUsed").insertRow(crrentrow+1);
    var newCellA = newtr.insertCell(0);
    var newCellB = newtr.insertCell(1);
    var newCellC = newtr.insertCell(2);
    var newCellD = newtr.insertCell(3);
    newCellA.innerHTML =  document.all("tbDetailUsed").rows[crrentrow].cells[0].innerHTML;
    newCellB.innerHTML = document.all("tbDetailUsed").rows[crrentrow].cells[1].innerHTML;
    newCellC.innerHTML = document.all("tbDetailUsed").rows[crrentrow].cells[2].innerHTML;
    newCellD.innerHTML = document.all("tbDetailUsed").rows[crrentrow].cells[3].innerHTML;
    //newtr.innerHTML = crrentrowHTML;
    }
    function delDetailProcess()
    {
        var delRow=document.all("tbDetailUsed").deleteRow(event.srcElement.rowIndex);
    }
    //-->
    </SCRIPT>
    </BODY>
    </HTML>
      

  3.   

    谢谢楼上的三位.可你们都没有正面回答我的问题啊特别是第三位,唉.我差点晕倒只要把我的代码 COPY PASTE 就可以看到结果了.你们说的我能理解,关键是我现在该如何让我的代码能够正确的执行啊?