Foros del Web » Programando para Internet » Javascript »

Fallo escribiendo en un textbox

Estas en el tema de Fallo escribiendo en un textbox en el foro de Javascript en Foros del Web. Hola! tengo que hacer el siguiente ejercicio: "Crear una página web con un formulario donde se solicita el número del DNI, sólo los números, y ...
  #1 (permalink)  
Antiguo 10/09/2011, 11:25
 
Fecha de Ingreso: septiembre-2011
Mensajes: 5
Antigüedad: 12 años, 7 meses
Puntos: 0
Sonrisa Fallo escribiendo en un textbox

Hola! tengo que hacer el siguiente ejercicio:
"Crear una página web con un formulario donde se solicita el número del DNI, sólo los números, y después de pulsar sobre un botón al dato introducido se le añade la letra". Vamos, que en el mismo textbox que el usuario escribe el número del Dni, al darle al botón de Aceptar, debe aparecer el número más la letra.

Este es el código que he escrito:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Ejercicio 2</title>
<script type="text/javascript">
function calcularLetra(){
var dni= document.getElementById("txtDni").value;
var resultado;
var letraCal;
var letras = ['T', 'R', 'W', 'A', 'G', 'M', 'Y', 'F', 'P', 'D', 'X', 'B', 'N', 'J', 'Z', 'S', 'Q', 'V', 'H', 'L', 'C', 'K', 'E', 'T'];
if (/^([0-9])*$/ && dni.length < "8"){
alert("Número de DNI incorrecto");
}
else {
resultado=dni%23;
letraCal=letras[resultado];
dni=dni+"-"+letraCal;
alert (dni);
}

document.formulario.txtDni.value = dni;
}
</script>
</head>

<body>
<h2 style="color:#00C "><strong><em>Ejercicio 2: Calcular la letra del D.N.I.</em></strong></h2>
<form id="formulario" name="formulario" method="post" action="">
<label>Inserta tu n&uacute;mero de DNI
<input type="text" name="txtDni" id="txtDni" />
<input type="submit" name="btnAceptar" id="btnAceptar" value="Ok" onclick="calcularLetra()"/>
</label>
</form>
</body>
</html>


El problema es que consigo que lo haga, pero sólo durante una décima de segundo, al momento desaparece y se queda el textbox blanco. No sé porque pasa ni como arreglarlo.. alguna idea?

Gracias
  #2 (permalink)  
Antiguo 10/09/2011, 12:14
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: Fallo escribiendo en un textbox

buenas,
el error lo tienes en el botón. fíjate que el tipo de botón es submit. por lo tanto, el formulario se enviará y recargará el mismo documento. debes cambiarlo a tipo button.

__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #3 (permalink)  
Antiguo 10/09/2011, 12:30
 
Fecha de Ingreso: septiembre-2011
Mensajes: 5
Antigüedad: 12 años, 7 meses
Puntos: 0
Respuesta: Fallo escribiendo en un textbox

Muchísimas gracias por la respuesta y por la rapidez! no me había dado ni cuenta....

Etiquetas: fallo, html, textbox, formulario
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 11:39.