我不是完美的
Javascript ..我想显示在数量输入框中输入的值的总和,在下一个名为total的输入框中没有刷新页面.任何人都可以帮我弄清楚吗?
这是javascript
<script type="text/javascript"> var howmanytoadd = 2; var rows; function calc() { var tot = 0; for (var i = 0; i < rows.length; i++) { var linetot = 0; rows[i].getElementsByTagName('input')[howmanytoadd].value = linetot; tot += linetot; } document.getElementById('total').value = tot } onload = function () { rows = document.getElementById('tab').getElementById('qty1'); for (var i = 0; i < rows.length; i++) { rows.getElementsByTagName('input')[i].onkeyup = calc; } } </script>
这是我的HTML代码:
Qty1 : <input type="text" name="qty1" id="qty"/><br> Qty2 : <input type="text" name="qty2" id="qty"/><br> Qty3 : <input type="text" name="qty3" id="qty"/><br> Qty4 : <input type="text" name="qty4" id="qty"/><br> Qty5 : <input type="text" name="qty5" id="qty"/><br> Qty6 : <input type="text" name="qty6" id="qty"/><br> Qty7 : <input type="text" name="qty7" id="qty"/><br> Qty8 : <input type="text" name="qty8" id="qty"/><br> <br><br> Total : <input type="text" name="total" id="total"/>
这里是屏幕截图
解决方法
尝试:
Qty1 : <input onblur="findTotal()" type="text" name="qty" id="qty2"/><br> Qty2 : <input onblur="findTotal()" type="text" name="qty" id="qty2"/><br> Qty3 : <input onblur="findTotal()" type="text" name="qty" id="qty3"/><br> Qty4 : <input onblur="findTotal()" type="text" name="qty" id="qty4"/><br> Qty5 : <input onblur="findTotal()" type="text" name="qty" id="qty5"/><br> Qty6 : <input onblur="findTotal()" type="text" name="qty" id="qty6"/><br> Qty7 : <input onblur="findTotal()" type="text" name="qty" id="qty7"/><br> Qty8 : <input onblur="findTotal()" type="text" name="qty" id="qty8"/><br> <br><br> Total : <input type="text" name="total" id="total"/> <script type="text/javascript"> function findTotal(){ var arr = document.getElementsByName('qty'); var tot=0; for(var i=0;i<arr.length;i++){ if(parseInt(arr[i].value)) tot += parseInt(arr[i].value); } document.getElementById('total').value = tot; } </script>