Soy un principiante de JavaScript, tengo un problema con las variables.
Escribí este código:
var acNo = document.getElementById("ac").value; function doSomething(){ alert(acNo); } La salida es: undefined
Pero cuando hice esto:
var acNo = 3la salida es 3
Código HTML: (Este es un proyecto muy grande, por eso no puedo compartir mucho código, pero estoy compartiendo el código HTML relacionado con este script)
<td>A/c</td> <td> <input type="number" name="" id="ac"></td> <td> <input type="number" name="" id="acHour"></td>¿Puede decirme cómo puedo solucionarlo manteniendo la variable global solamente?
Intente definir acNo después de que el documento se haya cargado por completo o dentro de la función.
Solución 1:
let acNo; window.onload = () => { acNo = document.getElementById("ac").value; } function doSomething() { alert(acNo); }Solución 2:
funtion doSomething() { alert(document.getElementById("ac").value) }Una forma de verificarlo es abriendo las herramientas de desarrollo de su navegador y ejecutando su document.getElementById en la consola.
Podrás ver todo sobre el elemento y qué propiedades tiene. Por ejemplo, es posible que desee verificar innerHTML en lugar de value según el tipo de elemento.
Creo que el valor solo se establece al principio y no cuando ejecutas doSomething más tarde. Si desea tener el valor globalmente, tenga una variable global y siga actualizándola cuando llame a doSomething .
var acNo = document.getElementById("ac").value; function doSomething(){ acNo = document.getElementById("ac").value; alert(acNo); }