Foros del Web » Programando para Internet » Javascript »

errores con varios programas pequeños

Estas en el tema de errores con varios programas pequeños en el foro de Javascript en Foros del Web. Sigo trasteando con ejercicios pequeños, para ir viendo mejor como va esto de JS, pero bueno, estoy viendo algunos errores que he tratado de corregir ...
  #1 (permalink)  
Antiguo 27/10/2012, 14:58
Avatar de nanotime  
Fecha de Ingreso: noviembre-2011
Ubicación: Cd. Guayana
Mensajes: 145
Antigüedad: 12 años, 5 meses
Puntos: 6
Pregunta errores con varios programas pequeños

Sigo trasteando con ejercicios pequeños, para ir viendo mejor como va esto de JS, pero bueno, estoy viendo algunos errores que he tratado de corregir pero tal vez no sea tan bueno como pienso.

A ver, les voy mostrando el código y los errores que me da:

Código HTML:
Ver original
  1. <!DOCTYPE html>
  2.     <head>
  3.         <meta charset="utf-8">
  4.         <title>Ejemplos</title>
  5.     </head>
  6.     <body>
  7.         <script src="JS/devuelve_cuadrado.js"></script>
  8.         <form>
  9.             <form name="formulario">
  10.                 <input type="text" name="texto">
  11.                 <input type="button" name="numero" value="GO!" onClick="cuadrado()">
  12.             </form>
  13.     </body>
  14. </html>

Código Javascript:
Ver original
  1. function cuadrado() {
  2.     var num = document.formulario.texto.value;
  3.     var num1 = parseInt(num);
  4.     var cuad = SQRTnum1;
  5.     return alert('El cuadrado del número ingresado es: ' + cuad);
  6. }

En este estoy simplemente tratando de retornar el cuadrado del número ingresado por el usuario, pero cuando veo la consola de firefox para ver por que no corre, me da esto:

Código:
[15:44:06.007] TypeError: document.formulario is undefined @ file:///home/nano/Code/html/JS/devuelve_cuadrado.js:2
En el segundo ejercicio como tal el error no es de sintaxis, es lógico, he probado algunos cambios pero todo me da igual, a ver si lo consiguen ustedes.

Código HTML:
Ver original
  1. <!DOCTYPE html>
  2.     <head>
  3.         <meta charset="utf-8">
  4.         <title>Ejemplos</title>
  5.     </head>
  6.     <body>
  7.         <script src="JS/devuelve_cuadrado.js"></script>
  8.         <form>
  9.             <form name="formulario">
  10.                 <input type="text" name="texto">
  11.                 <input type="button" name="numero" value="GO!" onClick="cuadrado()">
  12.             </form>
  13.     </body>
  14. </html>

Código Javascript:
Ver original
  1. function mayor () {
  2.     var nm1, nm2
  3.     nm1 = document.form1.num1.value;
  4.     nm2 = document.form1.num2.value;
  5.     if (parseInt(nm1) > parseInt(nm2)) {
  6.         return alert(nm1 + ' es mayor que ' + nm2);
  7.     }
  8.     else{
  9.         return alert(parseInt(nm2) + ' es mayor que ' + parseInt(nm2));
  10.     }
  11. }

El problema como tal es que la verdad nunca me devuelve los alerts como son, siempre pone que el primer numero ingresado es mayor que los demás, así no sea cierto.

Si me pueden echar la mano con esto, sería genial. Es simple y hasta estúpido debe parecer, pero tengo que preguntar
  #2 (permalink)  
Antiguo 27/10/2012, 15:50
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 10 meses
Puntos: 1567
Respuesta: errores con varios programas pequeños

Está muy bien que hagas este tipo de ejercicios, pero tratá de ser más ordenado en el método que utilizás.

Cuando trabajás con javascript y formularios, lo primero que debés hacer es aprender a identificar los elementos del mismo, hay varios métodos y propiedades que te pueden ayudar. Dejá las operaciones para más adelante

Ejemplo
Código HTML:
Ver original
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  2.    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4.  
  5. <script type="text/javascript">
  6. //<![CDATA[
  7. function recuperar_valores() {
  8. var A = document.formulario.texto1.value; // devuelve el valor de un campo
  9. alert('A: ' +A);
  10. var B = document.getElementById('texto2').value; // devuelve el valor de un campo
  11. alert('B: '+ B);
  12. var C = document.getElementsByName('texto3'); // devuelve un array para todos los inputs con dicho name
  13. var D = C[0].value;
  14. var E = C[1].value;
  15. alert('D: ' + D);
  16. alert('E: ' + E);
  17. }
  18.  
  19. //]]>
  20. </head>
  21. <form name="formulario" action="#" id="formulario"><input type="text" value="" name="texto1" /><br />
  22. <input type="text" value="" name="texto2" id="texto2" /><br />
  23. <input type="text" value="" name="texto3" /><br />
  24. <input type="text" value="" name="texto3" /><br />
  25. <input type="button" onclick="recuperar_valores();" value="valores" /></form>
  26. </body>
  27. </html>

Estos son solo algunos métodos, hay otros (buscálos), y se implementará el que mejor se adapte.

Luego si, complicá tus ejercicios. Pero "masticate" muy bien lo anterior
De paso, sqrt, es la raíz no el cuadrado

Un buen manual/tutorial no estaría de más

Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.

Etiquetas: errores, formulario, html, input, js, pequeños, programas
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:45.