Hago mini app para encontrar factorial. Cuando hago clic en el botón y obtengo el número en js , no muestra nada. Este es mi script.js
function factorial() { let number = document.getElementById("number") console.log(number); for (let i = number - 1; i >= 1; i++) { number = i * number console.log(number); } console.log(number); return number; } este es mi index.html
<input type="text" name="number" class="number" id="number"> <button onclick="factorial()" class="btn btn-primary " style="padding-right: 160px;padding-left: 160px">Find</button>Así por ejemplo:
function factorial() { let number = document.getElementById("number").value console.log(number); for (let i = number - 1; i >= 1; i--) { number = i * number } document.getElementById("result").innerHTML = number } <input type="text" name="number" class="number" id="number"> <button onclick="factorial()" class="btn btn-primary " style="padding-right: 160px;padding-left: 160px">Find</button> <h3 id="result"></h3>Hay una propiedad llamada .value . Esto devolverá el valor interno de las entradas (puede probarlo). Después de alcanzar el valor de la entrada, puede ejecutar su declaración.
Lea sobre .textContent aquí .
Lea acerca de .querySelector() aquí .
Consejo : nunca uses onclick() . Ya nadie lo usa, use .addEventListener() en su lugar.
function factorial() { // Edited here let number = document.getElementById("number").value; console.log(number); for (let i = number - 1; i >= 1; i++) { number = i * number console.log(number); } // As you wanted to put the result in the html file document.querySelector('h1').textContent += number; } <input type="text" name="number" class="number" id="number"> <button onclick="factorial()" class="btn btn-primary " style="padding-right: 160px;padding-left: 160px">Find</button> <h1>Result: </h1>