primero tienes que crear el escucha del EVENTO en javascript, luego, tratar de identificar el el INput de Entrada, y el de salida, para ello, cada Elemento HTML deberia ir Identificado
y con ello creo que lo mejor es que cambies un poco el HTML que te da PHP
por que el atributo ID de un elemento html debe ser UNICO ya que se considera como identificador,
bueno lo bueno es que javascript no es estricto, te dejo las funciones que necesitaria tu codigo, son funciones apra navegadores modernos, si queires adaptala para navegadores antiguos
recuerda que el "script" debe ir al final de tu tabla ,
el codigo puede contener errores de sintaxys, no hagas copy paste, solo comprende y si ay funciones no que no entiendas como funciona, GOOGLEA
Código HTML:
Ver original<script type="text/javascript"> //creamos la funcion de Evento "input" sucesor del "change"
function escucharInputDeCantidad(evento){
var input_cantidad= evento.target;//necesitamos saber que Input es para Obter su PADRE = td luego el padre del padre TR , el cual contiene el resultado
var tr = input_cantidad.parentElement.parentElement;
var input_subtotal=tr.querySelector('#SUBTOTAL_CU');
var input_unitario=tr.querySelector('#UNITARIO');
//ahora hacemos la mutiplicacion con valores
let variable_cantidad = ParseInt(input_cantidad.getAttribute('value'));
//comprobamos que sea un numero valido en la cantidad
if(variable_cantidad<1){ return ; }
let subtotal = ParseFloat(input_unitario.getAttribute('value')) * variable_cantidad;
//El subtotal lo enviamos al INPUT correspondiente
input_subtotal.setAttribute('value',subtotal);
//buscamos
//Ahora para ejecutamos la Funcion para Calcultar el TOTAL global
obtenerElTotal();
}
function obtenerElTotal(){
var total=0;
document.querySelectorAll('tr input#SUBTOTAL_CU').forEach(function(subtotal_input){
let subtotal= ParseFloat(subtotal_input.getAttribute());
if(subtotal>0){
total = total + subtotal;
}
;});
alert(total);
}
//elegimos todos los elementos input ( name="cantidad[]") y le añadimos el EVENTO de "input" sucesor del "change"
document.querySelectorAll('tr #CANTIDAD').forEach(function(el_input){
el_input.addEventListener('input',escucharInputDeCantidad);
;})