Hola buenas, tengo un problemilla con una funcion de Sumar sobre unos inputs Text que se crean mediante un boton.
El caso es que tengo unos campos que poniendo una cantidad, y mediante una funcion javascript se suman y el resultado aparece en otro campo.
Mi problema viene cuando he añadido un boton para crear mas campos por si el usuario quiere añadir mas cantidades.
1. No se como modificar el javascript de generar los campos de texto para que genere el ID que yo quiera de manera correlativa.
2. si consigo eso, como lo hago para que la funcion de sumar me sume los campos? ya que la que tengo hay que especificar los campos a sumar.
este es el codigo de la creacion de campos mediante un boton.
Código:
<!-- Funcion Javascript para crear filas con inputs dentro -->
<script language="javascript" type="text/javascript">
function insertarFila(){
var elmTBODY = document.getElementById('CuerpoTabla');
var elmTR;
var elmTD;
var elmTD2;
var elmText;
var elmText2;
elmTR = document.createElement('tr');
elmTD = document.createElement('<td width="140" height="27" class="texto-cuerpo10" background="archivos/fondoceldacar.jpg" style="border-right:dotted 1px #000000;">');
elmTD2 = document.createElement('<td width="280" align="left" class="texto-cuerpo88" style="border-bottom:dotted 1px #000000; border-right:dotted 1px #000000; font-weight:bold;">');
elmTD3 = document.createElement('<td width="280" align="left" class="texto-cuerpo88" style="border-bottom:dotted 1px #000000; border-right:dotted 1px #000000; font-weight:bold;">');
elmTD4 = document.createElement('<td width="280" align="center" height="27" class="texto-cuerpo10" bgcolor="#FFFFFF">');
elmText = document.createTextNode("\u00a0 \u00a0Mas Préstamos");
elmText2 = document.createTextNode("\u00a0\u00a0\u00a0");
elmText3 = document.createElement('<input name="e" onKeypress="LP_data();" onFocus="Sumar();" onBlur="NoSumar();" type="text" class="texto-cuerpo88" id="e" size="35" maxlength="100">');
elmText6 = document.createTextNode("\u00a0€");
elmText7 = document.createTextNode("\u00a0€");
elmText4 = document.createTextNode("\u00a0\u00a0\u00a0");
elmText5 = document.createElement('<input name="f" onKeypress="LP_data();" onFocus="Sumar();" onBlur="NoSumar();" type="text" class="texto-cuerpo88" id="f" size="35" maxlength="100">');
elmTD.appendChild(elmText);
elmTD2.appendChild(elmText2);
elmTD2.appendChild(elmText3);
elmTD2.appendChild(elmText6);
elmTD3.appendChild(elmText4);
elmTD3.appendChild(elmText5);
elmTD3.appendChild(elmText7);
elmTR.appendChild(elmTD);
elmTR.appendChild(elmTD2);
elmTR.appendChild(elmTD3);
elmTR.appendChild(elmTD4);
elmTBODY.insertBefore(elmTR,elmTBODY.childNodes[0])
}
</script>
y este el de suma
Código:
<script type="text/javascript">
function Sumar(){
interval = setInterval("calcular()",1);
}
function calcular(){
uno = document.caratulaform.carhipotecapendiente.value;
dos = document.caratulaform.carprestamo1pendiente.value;
tres = document.caratulaform.carprestamo2pendiente.value;
document.caratulaform.cartotalpendiente.value = (uno * 1) + (dos * 1) + (tres * 1);
var redondeo=Math.round(document.caratulaform.cartotalpendiente.value*100)/100;
document.caratulaform.cartotalpendiente.value = redondeo;
}
function NoSumar(){
clearInterval(interval);
}
</script>
Grácias.