javascript código

Iniciado por skarih, 30 Septiembre 2015, 21:07 PM

0 Miembros y 1 Visitante están viendo este tema.

skarih

Buenas a todos/as,

Escribo porque tengo una gran duda y no he encontrado la manera de resolverla (es algo simple, pero no encuentro la manera de realizarlo).

La cuestion es la siguiente: tengo el siguiente código que genera un número de lotería, pero a la hora de darle al botón ha de ir a una función de javascript para que haga todo el proceso. El problema que tengo es que no se por qué los números no aparecen dentro del "input" que tengo en el html.
Código (javascript) [Seleccionar]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html>
<head>
<title>Primitiva</title>
 <style type="text/css">
 body {background-color:#cccccc;}

 h1 {background-color:ddb1bc;
     color:firebrick;
     font-size: large;
     text-align: center;}
   </style>
<script language="javascript">
var primitiva=new Array(6);

function GenerarNumeros()
 {

var i, j, k;
       var intnumero;
       var blnrepetido;
       txtNumeros.value="";
   
     for(i=0;i<6;i++)
       {
           do
             {
               blnrepetido = false;
               intnumero = Math.floor(Math.random()*49)+1;
               j = 0;
               while( (j < i) && (blnrepetido==false))
                  {
                   if( primitiva[j] == intnumero)
                       blnrepetido = true;
                   j ++;
                   }
              }    
           while(blnrepetido==true);
           primitiva[i] = intnumero;
             }
     for(i=0;i<6;i++)
     txtNumeros.value+=primitiva[i]+"  ";
     }

   </script>
</head>

<body>
<h1>&nbsp;Primitiva&nbsp;</h1>
<p><input type="button" name="btnGenerarNumeros" value="GENERAR NÚMEROS" onclick="GenerarNumeros()"
  style="width:250;"></p>
<p><input type="text" name="txtNumeros" size="20"> </p>

</body>
</html>


Muchas gracias de antemano. Mi razonamiento me dice que tiene que ver con -- txtNumeros.value+=primitiva+" ";

Un saludo y espero más que sea una respuesta ^^.

Eleкtro

Por favor, publica correctamente el post usando las etiquetas Geshi para darle formato al código y que lo podamos leer sin problema, no nos hagas tener que copiar y pegarlo.

Lee las normas del subforo de programación general.

Saludos








skarih

Disculpa, no veia lo de las etiquetas.

0roch1

En la función de javascript nunca defines el objeto txtNumeros.

Debes hacer algo como así.

Código (html4strict) [Seleccionar]

<!DOCTYPE html>
<html>
<head>
<title>Title</title>
<script type="text/javascript">
var num = 0;
function putValue() {
var elem = document.getElementById("myinput");
elem.value = num++;
}
</script>

</head>
<body>
<input type="text" id="myinput">
<input type="button" value="Ok" onclick="putValue()">
</body>
</html>


Si observas verás que se define el elemento elem mediante la función getElementById, también puedes obtener el elemento mediante la función getElementsByName pero es más común por el id.

Si obtienes el elemento por id, claro está que debes tener definida la propiedad id para la etiqueta input en este caso.


skarih

Muchisimas gracias 0roch1, era justamente lo que buscaba.

Tienes razón, en ningun momento declaro la variable en el script.

Nuevamente, gracias!