Felipe
Iota
Redactor
Verificación en dos pasos activada
Hola amigos, necesito que al crear una nueva linea con Jquery estas llamen a la función multiplicar y se muestre el resultado en tiempo real en el input que lleva por nombre acumu. El problema que tengo es que cuando a la función multiplicar le entrego los valores fijos funciona, cuando lo dejo con los argumentos tal cual está en el código, no funciona. 🙁
Para ejecutarlo: https://jsfiddle.net/wuu1n6hL/
¿Qué hago mal?
El código que tengo es el siguiente:
Para ejecutarlo: https://jsfiddle.net/wuu1n6hL/
¿Qué hago mal?
El código que tengo es el siguiente:
HTML:
<!DOCTYPE html>
<html lang="es_ES">
<head>
<meta charset="UTF-8">
<title>Nota - 4</title>
<link href="css/bootstrap.min.css" rel="stylesheet" media="screen">
<script src="js/jquery-3.1.1.min.js" type="text/javascript"></script>
<script type="text/javascript">
var nextinput = 0;
function AgregarCampos(){
nextinput++;
campo = '<li id="idLi'+nextinput+'"><input type="number" size="20" id="nota'+nextinput+'" name="nota'+nextinput+'" step="any" onChange="multiplicar(nota'+nextinput+',pondera'+nextinput+',acumu'+nextinput+');" value=0 /> x <input type="number" size="20" id="pondera'+nextinput+'" name="pondera'+nextinput+'" step="any" onChange="multiplicar(nota'+nextinput+',pondera'+nextinput+',acumu'+nextinput+');" value=0 /> = <input type="number" size="20" id="acumu'+nextinput+'" name="acumu'+nextinput+'" step="any"/></li>';
$("#campos").append(campo);
}
function multiplicar(nota,pondera,acumu){
m1 = document.getElementById("nota").value;
m2 = document.getElementById("pondera").value;
r = m1*m2;
document.getElementById("acumu").value = r;
}
</script>
</head>
<body>
<form id="form" name="form" method="post">
<a href="#" onclick="AgregarCampos();">Agregar Nota</a>
<div id="campos"></div>
</form>
</form>
</body>
</html>
Última edición: