<html> 
<head> 
<title>js to excel</title> 
<script type="text/javascript">
           function getA(obj){
            var id = obj.id; 
            var pre = id.split("_")[0];
            var sum = 0;
            for(i=1;i<=12;i++){
                var c = document.getElementById(pre+"_"+i).value;
                if(c!=''&&!isNaN(c)){
                    sum+=parseFloat(c,10);
                }
            }
            document.getElementById(pre+"_13").value=sum.toFixed(2);
        }
</script> 
</head> 
<body> 
<table  class="table_01"  id="table_01">
<tr bgcolor="#99CC00">
<td bgcolor="#FEFEFE"> </td>
 <td>科目</td>
 <td>一月</td>
 <td>二月</td>
 <td>三月</td>
 <td>四月</td>
 <td>五月</td>
 <td>六月</td> 
 <td>七月</td>
 <td>八月</td>  
 <td>九月</td> 
 <td>十月</td> 
 <td>十一月</td>
 <td>十二月</td> 
 <td>Total</td>
</tr>
   <tr>
  <td rowspan="2">汇总</td>
    </tr>            
<tr>
<td>主营业务成本</td>
<td><input type="text"  name="1CB" onblur="getProfit(this);getA(this)" id="hzCB_1" size=3 style="border:0px;" /></td>
<td><input type="text"  name="2CB" onblur="getProfit(this);getA(this)" id="hzCB_2" size=3 style="border:0px;" /></td>
<td><input type="text"  name="3CB" onblur="getProfit(this);getA(this)" id="hzCB_3" size=3 style="border:0px;" /></td>
<td><input type="text"  name="4CB" onblur="getProfit(this);getA(this)" id="hzCB_4" size=3 style="border:0px;" /></td> 
<td><input type="text"  name="5CB" onblur="getProfit(this);getA(this)" id="hzCB_5" size=3 style="border:0px;" /></td>
<td><input type="text"  name="6CB" onblur="getProfit(this);getA(this)" id="hzCB_6" size=3 style="border:0px;" /></td>
<td><input type="text"  name="7CB" onblur="getProfit(this);getA(this)" id="hzCB_7" size=3 style="border:0px;" /></td>
<td><input type="text"  name="8CB" onblur="getProfit(this);getA(this)" id="hzCB_8" size=3 style="border:0px;" /></td>
<td><input type="text"  name="9CB" onblur="getProfit(this);getA(this)" id="hzCB_9" size=3 style="border:0px;" /></td>
<td><input type="text"  name="10CB" onblur="getProfit(this);getA(this)" id="hzCB_10" size=3 style="border:0px;" /></td>
<td><input type="text"  name="11CB" onblur="getProfit(this);getA(this)" id="hzCB_11" size=3 style="border:0px;" /></td>
<td><input type="text"  name="12CB" onblur="getProfit(this);getA(this)" id="hzCB_12" size=3 style="border:0px;" /></td>
<td><input type="text"  name="13CB"  onblur="getProfit(this)" id="hzCB_13" size=4 style="border:0px;" /></td>
</tr>
<tr>
<td rowspan="2">上海业务人员</td>
</tr>
<tr>
<td>主营业务成本</td>
<td><input type="text" onblur="getProfit(this);getA(this)" name="1CByw" id="ywCB_1"  size=3 style="border:0px;" /></td>
<td><input type="text" onblur="getProfit(this);getA(this)" name="2CByw" id="ywCB_2" size=3 style="border:0px;" /></td>
<td><input type="text" onblur="getProfit(this);getA(this)" name="3CByw" id="ywCB_3" size=3 style="border:0px;" /></td>
<td><input type="text" onblur="getProfit(this);getA(this)" name="4CByw" id="ywCB_4" size=3 style="border:0px;" /></td> 
<td><input type="text" onblur="getProfit(this);getA(this)" name="5CByw" id="ywCB_5" size=3 style="border:0px;" /></td>
<td><input type="text" onblur="getProfit(this);getA(this)" name="6CByw" id="ywCB_6" size=3 style="border:0px;" /></td>
<td><input type="text" onblur="getProfit(this);getA(this)" name="7CByw" id="ywCB_7" size=3 style="border:0px;" /></td>
<td><input type="text" onblur="getProfit(this);getA(this)" name="8CByw" id="ywCB_8" size=3 style="border:0px;" /></td>
<td><input type="text" onblur="getProfit(this);getA(this)" name="9CByw" id="ywCB_9" size=3 style="border:0px;" /></td>
<td><input type="text" onblur="getProfit(this);getA(this)" name="10CByw" id="ywCB_10" size=3 style="border:0px;" /></td>
<td><input type="text" onblur="getProfit(this);getA(this)" name="11CByw" id="ywCB_11" size=3 style="border:0px;" /></td>
<td><input type="text" onblur="getProfit(this);getA(this)" name="12CByw" id="ywCB_12" size=3 style="border:0px;" /></td>
<td><input type="text" onblur="getProfit(this)"  name="13CByw" id="ywCB_13" size=4 style="border:0px;" /></td>
</tr>
<tr>
  <td rowspan="2">上海支持人员</td>
    </tr>
<tr>
<td>主营业务成本</td>
<td><input type="text" onblur="getProfit(this);getA(this)" name="1CBzc" id="zcCB_1"  size=3 style="border:0px;" /></td>
<td><input type="text" onblur="getProfit(this);getA(this)"name="2CBzc" id="zcCB_2" size=3 style="border:0px;" /></td>
<td><input type="text" onblur="getProfit(this);getA(this)" name="3CBzc" id="zcCB_3" size=3 style="border:0px;" /></td>
<td><input type="text" onblur="getProfit(this);getA(this)" name="4CBzc" id="zcCB_4" size=3 style="border:0px;" /></td> 
<td><input type="text" onblur="getProfit(this);getA(this)" name="5CBzc" id="zcCB_5" size=3 style="border:0px;" /></td>
<td><input type="text" onblur="getProfit(this);getA(this)" name="6CBzc" id="zcCB_6" size=3 style="border:0px;" /></td>
<td><input type="text" onblur="getProfit(this);getA(this)" name="7CBzc" id="zcCB_7" size=3 style="border:0px;" /></td>
<td><input type="text" onblur="getProfit(this);getA(this)" name="8CBzc" id="zcCB_8" size=3 style="border:0px;" /></td>
<td><input type="text" onblur="getProfit(this);getA(this)" name="9CBzc" id="zcCB_9" size=3 style="border:0px;" /></td>
<td><input type="text" onblur="getProfit(this);getA(this)" name="10CBzc" id="zcCB_10" size=3 style="border:0px;" /></td>
<td><input type="text" onblur="getProfit(this);getA(this)" name="11CBzc" id="zcCB_11" size=3 style="border:0px;" /></td>
<td><input type="text" onblur="getProfit(this);getA(this)" name="12CBzc" id="zcCB_12" size=3 style="border:0px;" /></td>
<td><input type="text" onblur="getProfit(this)"  name="13CBzc" id="zcCB_13" size=4 style="border:0px;" /></td>
</tr>
<tr>
  <td rowspan="2"> 宁波</td>
    </tr>
<tr>
<td>主营业务成本</td>
<td><input type="text" onblur="getProfit(this);getA(this)" name="1CBnb" id="nbCB_1"  size=3 style="border:0px;" /></td>
<td><input type="text" onblur="getProfit(this);getA(this)" name="2CBnb" id="nbCB_2" size=3 style="border:0px;" /></td>
<td><input type="text" onblur="getProfit(this);getA(this)" name="3CBnb" id="nbCB_3" size=3 style="border:0px;" /></td>
<td><input type="text" onblur="getProfit(this);getA(this)" name="4CBnb" id="nbCB_4" size=3 style="border:0px;" /></td> 
<td><input type="text" onblur="getProfit(this);getA(this)" name="5CBnb" id="nbCB_5" size=3 style="border:0px;" /></td>
<td><input type="text" onblur="getProfit(this);getA(this)" name="6CBnb" id="nbCB_6" size=3 style="border:0px;" /></td>
<td><input type="text" onblur="getProfit(this);getA(this)" name="7CBnb" id="nbCB_7" size=3 style="border:0px;" /></td>
<td><input type="text" onblur="getProfit(this);getA(this)" name="8CBnb" id="nbCB_8" size=3 style="border:0px;" /></td>
<td><input type="text" onblur="getProfit(this);getA(this)" name="9CBnb" id="nbCB_9" size=3 style="border:0px;" /></td>
<td><input type="text" onblur="getProfit(this);getA(this)" name="10CBnb" id="nbCB_10" size=3 style="border:0px;" /></td>
<td><input type="text" onblur="getProfit(this);getA(this)" name="11CBnb" id="nbCB_11" size=3 style="border:0px;" /></td>
<td><input type="text" onblur="getProfit(this);getA(this)" name="12CBnb" id="nbCB_12" size=3 style="border:0px;" /></td>
<td><input type="text" onblur="getProfit(this)"  name="13CBnb" id="nbCB_13" size=4 style="border:0px;" /></td>
</tr>  
 </table>
</body> 
</html> 
现在我想实现,上海业务人员 ,上海支持人员, 宁波这三行一月到十二月是手动输入数值,getA()方法是实现一月到十二月的值累加,放到Total这列。汇总这行的值为,例如一月等于上海业务人员 ,上海支持人员, 宁波这三行一月的值和。我该如何写JS。 

解决方案 »

  1.   

    大概是下面这样吧。
     var iThis = id.split("_")[1];
     document.getElementById("hzCB_" + iThis).value +=  document.getElementById("ywCB_" + iThis).value;
     document.getElementById("hzCB_" + iThis).value +=  document.getElementById("zcCB" + iThis).value;
     document.getElementById("hzCB_" + iThis).value +=  document.getElementById("nbCB" + iThis).value; document.getElementById("hzCB_13").value +=  document.getElementById("ywCB_13").value;
     document.getElementById("hzCB_13").value +=  document.getElementById("zcCB_13").value;
     document.getElementById("hzCB_13").value +=  document.getElementById("nbCB_13").value;
      

  2.   

    标题说的不是保留两位小数么?
    str=str.toFixed(2);