x=parseFloat(otable.rows[0].cells[0].a.value) + parseFloat(otable.rows[1].cells[0].b.value)

解决方案 »

  1.   

    x=eval(otable.rows[0].cells[0].a.value + otable.rows[1].cells[0].b.value)
      

  2.   

    var y = new Number(otable.rows[0].cells[0].a.value );
    var y1 = new Number(otable.rows[1].cells[0].b.value);
    x = y +y1;
      

  3.   

    对不起各位,可能我误导了各位,
    otable.rows[0].cells[0].a.value 的写法就不认的。说不是对象(我是用的input里的数据,不是直接放在table里td的数据)
      

  4.   

    而且顺便问问,我用javascript实现的由用户填加的行能不能参与计算?
      

  5.   

    <TABLE id=otable border=1>
    <TR>
    <TD><INPUT TYPE="text" name=a></TD>
    </TR>
    <TR>
    <TD><INPUT TYPE="text" name=b></TD>
    </TR>
    <TR>
    <TD>&nbsp;</TD>
    </TR>
    </TABLE>
    <INPUT TYPE="submit" value="SUM" onclick=sumall()>
    <script language=javascript>
    function sumall(){
      var x=0;
      x=-eval(-otable.rows[0].cells[0].firstChild.value -otable.rows[1].cells[0].firstChild.value);
      otable.rows[2].cells[0].innerText=x;
    }
    </script>我用javascript实现的由用户填加的行能不能参与计算?
    可以
      

  6.   

    参考一下
    http://expert.csdn.net/Expert/topic/1216/1216778.xml?temp=.5849726
      

  7.   

    or:<BODY BGCOLOR="#FFFFFF">
    <TABLE id=otable border=1>
    <TR>
    <TD><INPUT TYPE="text" name=a></TD>
    </TR>
    <TR>
    <TD><INPUT TYPE="text" name=b></TD>
    </TR>
    <TR>
    <TD><INPUT TYPE="text" name=a></TD>
    </TR>
    <TR>
    <TD><INPUT TYPE="text" name=b></TD>
    </TR><TR>
    <TD>&nbsp;</TD>
    </TR>
    </TABLE>
    <INPUT TYPE="submit" value="SUM" onclick=sumall()>
    <script language=javascript>
    function sumall(){
      var a = document.all.a ;
      var b = document.all.b ;
      var s = 0 ;
      if(a)
    if(a.length){
    for(var i=0;i<a.length;i++)
    if(!isNaN(Number(a[i].value)) &&  !isNaN(Number(b[i].value)))
    s +=parseFloat(a[i].value)+parseFloat(b[i].value) ;
    }else{
    if(!isNaN(Number(a.value)) &&  !isNaN(Number(b.value)))
    s +=parseFloat(a.value)+parseFloat(b.value) ;
    }
      otable.rows[otable.rows.length-1].cells[0].innerText=s;
    }
    </script>