我正在输入值并在总字段中获得总数。但是当我更改单元格中的值时,我没有动态地更改总数

时间:2015-09-28 10:53:06

标签: javascript

//我正在输入值并在总字段中获得总数。但是当我在cellfiels中更改值时,我没有动态地更改总数。       如何在单元格中更改值时,如何在总字段中获得总计。 Plz帮助

如果我输入a:10; b:20; c:30那么总字段显示60,但是当我改变值时,总数不会改变,它仍然保持相同,即60

 <html>
 <head>
 <title>Dynamic Form</title>
 <script>
 //function creation named changeit
 function ChangeIt() 
 {
 var str =document.getElementById("UserInput").value;
 var res = str.split(';');
 var i;
 var sum=0;
 var table = document.getElementById("myTable");
 for (i = 0; i < res.length; i++)
 {
 var row = table.insertRow(0);
 var cell1 = row.insertCell(0);
 var cell2 = row.insertCell(1);
 cell1.innerHTML = res[i].split(':')[0];
 var t5=document.createElement("input");
 t5.id="txt"+res[i].split(':')[0];
 t5.value=res[i].split(':')[1];
 cell2.appendChild(t5);
 alert(res[i].split(':')[0]);
 var sum1;
 sum1=res[i].split(':')[1];
 sum=parseInt(sum)+parseInt(sum1);
 }
 //addition function to get total
 function getsum() 
 {
 var sum2;
 sum2=res[i].split(':')[1];
 sum=parseInt(sum)+parseInt(sum1);
  }
 alert(sum);
 document.getElementById("UserInput1").value=sum;
 document.getElementById("UserInput1").value=getsum();
 }
 </script>
           <body>
           <input type="label" name=t1 id="UserInput">  <input type="button"                     value="click" onClick="ChangeIt()"><br><br>
            Total  <input type="label" name=t2 id="UserInput1" disabled>
           <table id="myTable">
         <div id="my_div"></div>
          </body>
      </head>
      </html> 

1 个答案:

答案 0 :(得分:0)

试试这个 -

var t5=document.createElement("input");
     t5.id="txt"+res[i].split(':')[0];
     t5.value=res[i].split(':')[1];
    t5.onChange="getsum()";