Cita:
Iniciado por JavierB Hola
zsamer
Echa un vistazo a este enlace para
crear elementos dinamicamente
Para sumar dos input:
suma = parseInt(document.forms[0]['nombre1'].value) + parseInt(document.forms[0]['nombre2'].value)
Saludos,
Gracias, funcionó perfecto en Mozilla Firefox, la creación de inputs y el calculo, pero en Internet explorer genera bien los inputs pero falla al hacer la suma, no suma los valores.
este es el código:
Código PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html>
<head>
<title>Crear input file</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<script type="text/javascript">
<!--
num=0;
function Suma(valorA, valorB, valorC)
{
var Valor1 = parseInt(document.getElementById(valorA).value);
var Valor2 = parseInt(document.getElementById(valorB).value);
document.getElementById(valorC).value = parseInt(Valor1+Valor2);
}
function crear(obj) {
num++;
fi = document.getElementById('fiel'); // 1
contenedor = document.createElement('div'); // 2
contenedor.id = 'div'+num; // 3
fi.appendChild(contenedor); // 4
ele = document.createElement('input'); // 5
ele.type = 'text'; // 6
ele.name = 'valor1'+num; // 6
ele.id = 'valor1'+num; // 6
ele.setAttribute("onKeyUp","Suma('valor1"+num+"', 'valor2"+num+"', 'total"+num+"')");
contenedor.appendChild(ele); // 7
ele = document.createElement('input'); // 5
ele.type = 'text'; // 6
ele.name = 'valor2'+num; // 6
ele.id = 'valor2'+num; // 6
ele.setAttribute("onKeyUp","Suma('valor1"+num+"', 'valor2"+num+"', 'total"+num+"')");
contenedor.appendChild(ele); // 7
ele = document.createElement('input'); // 5
ele.type = 'text'; // 6
ele.name = 'total'+num; // 6
ele.id = 'total'+num; // 6
contenedor.appendChild(ele); // 7
ele = document.createElement('input'); // 5
ele.type = 'button'; // 6
ele.value = 'Borrar'; // 8
ele.name = 'div'+num; // 8
ele.onclick = function () {borrar(this.name)} // 9
contenedor.appendChild(ele); // 7
}
function borrar(obj) {
fi = document.getElementById('fiel'); // 1
fi.removeChild(document.getElementById(obj)); // 10
}
-->
</script>
</head>
<body>
<form method="post" action="algo.php">
<fieldset id="fiel">
<input type="button" value="Crear" onclick="crear(this)" />
</fieldset>
</form>
</body>
</html>
También probé la funcion sumar de la siguiente forma y tampoco funciona en IE y si en mozilla.
Código PHP:
function Suma(valorA, valorB, valorC)
{
var Valor1 = parseInt(document.forms[0][valorA].value);
var Valor2 = parseInt(document.forms[0][valorB].value);
document.forms[0][valorC].value = parseInt(Valor1+Valor2);
}
Alguna sugerencia para que funcione bien en IE.
MUCHAS GRACIAS Y SALUDOS