Ver Mensaje Individual
  #2 (permalink)  
Antiguo 06/04/2014, 10:40
Avatar de patilanz
patilanz
 
Fecha de Ingreso: enero-2012
Mensajes: 880
Antigüedad: 13 años, 1 mes
Puntos: 29
Respuesta: Como llamar al texto de un input, por su id?

Hola, bienvenido al foro :)

No te funciona por 2 razones.

El script se encuentra en la parte superior de la pagina por lo tanto se carga antes de los input y al asignarlos a las 3 variables se asigna undefined ya que no existen todabia.
para solucionar esto puedes poner el tag <script> al final o puedes usar.
Código Javascript:
Ver original
  1. <script>
  2. window.onload=function(){
  3. //Codigo javascript
  4.  
  5. }
  6. </script>
Con esto ejecutas el script despues de que la pagina ha sido cargada.

Esto no va a hacer que funcione porque tu asignas los nodos html los inputs como tales y no su contenido. Tienes que cambiar lo por:

Código Javascript:
Ver original
  1. var alto = document.getElementById('alto').value;
  2. var ancho = document.getElementById('ancho').value;
  3. var largo = document.getElementById('largo').value;

El atributo value contiene el valor del input en text.

Tambien seria mejor que pongas la definicion de las variables dentro de la funcion calcular para que no sean globales.

Asi funciona:

Código Javascript:
Ver original
  1. function calcular()
  2. {
  3. var alto = document.getElementById('alto').value;
  4. var ancho = document.getElementById('ancho').value;
  5. var largo = document.getElementById('largo').value;
  6.  
  7. var area1 = ancho * alto;
  8. var area2 = area1;
  9. var area3 = largo * alto;
  10. var area4 = area3;
  11. var area5 = ancho * largo;
  12. var metros2 = area1 + area2 + area3 + area4 + area5;
  13.  
  14. alert('La superficio a pintar son: ' + metros2 + ' m2');
  15. }

Saludos