|  | 
	                
  
    | 
	 
        ช่วยดูโค้ดการบวก Sumtotal ให้หน่อยค่ะ มันขึ้นแต่ 0 กับ NaN  นั่งงมมาหลายวันแล้ว     |  
    |  |  
 
              
  
    | 
 
 
        
          |  |  |  |  |  
          |  |  | 
            
              | ให้เป็นแนวทางครับ ผมเขียนแบบนี้ใช้ได้ครับ 
 <script language="JavaScript">
 function fncSums25()
 {
 var t1 = document.getElementsByName('textbox1');
 var t2 = document.getElementsByName('textbox2');
 var tot=0;
 for(var i=0;i<enow.length;i++){
 if(parseFloat(t1[i].value))
 tot += parseFloat(t1[i].value)+parseFloat(t2[i].value);
 }
 var total=tot;
 document.getElementById('textboxsum').value = Math.round(total);
 }
 
 document.addEventListener("DOMContentLoaded", function(event) {
 fncSums25();
 });
 </script>
 
 |  
              | 
                
                  |  |  |  |  
                  |  | 
                      
                        | Date :
                            2021-10-15 15:54:17 | By :
                            comsc006 |  |  |  
                  |  |  |  |  |  |  |  
          |  |  |  |  |  
 
        
          |  |  |  |  |  
          |  |  | 
            
              | Code (JavaScript) 
 
let elems = document.getElementsByClassName('items');
let myLength = elems.length,
let totalsale = 0;
for (var i = 0; i < myLength; ++i) {
  totalsale += elems[i].value-0; //  elems[i].value-0 ทำ string ให้เป็นตัวเลข แบบสั้นๆ ขีเกียจ parse
}
document.getElementById('totalsale').value = totalsale;
 Code (JavaScript)
 
 
function getType(x) {
	let stringConstructor = "test".constructor;
	let arrayConstructor = [].constructor;
	let objectConstructor = ({}).constructor;
	if (x === null) {return "null";}
	if (x === undefined) {return "undefined";}
	if (x.constructor === stringConstructor) {return "String";}
	if (x.constructor === arrayConstructor) {return "Array";}
	if (x.constructor === objectConstructor) {return "Object";}
	return "don't know";
}
function getItems(){
  let items = new Array();
  let itemCount = document.getElementsByClassName("items");
  let totalsale = 0;
  for(var i = 0; i < itemCount.length; i++){
    let id = `saletotal_${itemCount[i].id}`;
    let v = document.getElementById(id).value
    if(getType(v)==='String'){
      totalsale += v-0;
    }
  }
  document.getElementById('paymentreceipt').value = totalsale;
  return totalsale;
}
getItems();
ลองดูหลายๆ แบบ
 
 |  
              | 
                
                  |  |  |  |  
                  |  | 
                      
                        | Date :
                            2021-10-15 17:17:49 | By :
                            Chaidhanan |  |  |  
                  |  |  |  |  |  |  |  
          |  |  |  |  |  
 
        
          |  |  |  |  |  
          |  |  | 
            
              | ขอบคุณทุกคนสำหรับคำแนะนำค่ะ  
 |  
              | 
                
                  |  |  |  |  
                  |  | 
                      
                        | Date :
                            2021-10-15 22:01:19 | By :
                            aobjung |  |  |  
                  |  |  |  |  |  |  |  
          |  |  |  |  |  
 
        
          |  |  |  |  |  
          |  |  | 
            
              | 2021 แล้ว, เลิกเขียน jQuery เถอะ DOM, ECMA, etc, ...
 
 Code (PHP)
 
 <!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>DOM->Sum with loop->element</title>
<style>
td, td > input[type="text"]{text-align:center;height:30px;line-height:30px;}
td > input[type="text"]{border:1px solid #ddd;}
input:read-only {background-color: #ddd;}
</style>
</head>
<body>
<form id="test">
<table id="table">
<thead>
<tr>
	<td>No</td>
	<td>ID</td>
	<td>Number</td>
</tr>
</thead>
<tbody>
<tr>
	<td>1</td>
	<td><input type="text" name="id[]" value="1"></td>
	<td><input type="text" name="amt[]" class="items" value="10"></td>
</tr>
<tr>
	<td>2</td>
	<td><input type="text" name="id[]" value="2"></td>
	<td><input type="text" name="amt[]" class="items" value="20"></td>
</tr>
<tr>
	<td> </td>
	<td><input type="text" name="count" id="num-rows" readonly></td>
	<td><input type="text" name="total" id="total" readonly></td>
</tr>
<tr>
	<td> </td>
	<td> </td>
	<td><button type="button" id="calculate">Calculate</button></td>
</tr>
</tbody>
</table>
</form>
<script>
(function() {
	var items = document.querySelectorAll(".items");
	const total = () => {
		let total = 0;
		let numRows = 0;
		for (let element of items) {
			numRows++;
			total += Number(element.value);
		}
		document.getElementById("num-rows").value = numRows;
		document.getElementById("total").value = total;
	}
	document.getElementById("calculate").addEventListener("click", function() {
		total();
	});
	items.forEach(el => el.addEventListener('keyup', event => {
		total();
	}));
}());
</script>
</body>
</html>
 |  
              | 
                
                  |  |  |  |  
                  |  | 
                      
                        | Date :
                            2021-10-18 09:19:39 | By :
                            Guest |  |  |  
                  |  |  |  |  |  |  |  
          |  |  |  |  |  
 
        
          |  |  |  |  |  
          |  |  | 
            
              | short hand: +number //convert to number
 Code (JavaScript)
 
 
for (let element of items) {
	numRows++;
	total += +element.value;
}
 |  
              | 
                
                  |  |  |  |  
                  |  | 
                      
                        | Date :
                            2021-10-18 10:08:22 | By :
                            Guest |  |  |  
                  |  |  |  |  |  |  |  
          |  |  |  |  |  
 
        
          |  |  |  |  |  
          |  |  | 
            
              | map + reduce Code (JavaScript)
 
 
var items = document.querySelectorAll(".items");
const total = () => {
	document.getElementById("total").value = [...document.querySelectorAll(".items")].map(item => +item.value).reduce((sum, number) => {
		return sum + number;
	}, 0);
}
document.getElementById("calculate").addEventListener("click", function() {
	total();
});
 |  
              | 
                
                  |  |  |  |  
                  |  | 
                      
                        | Date :
                            2021-10-18 12:37:58 | By :
                            Guest |  |  |  
                  |  |  |  |  |  |  |  
          |  |  |  |  |  
 
 
 |  |