Hola estoy empezando con Javascript y html, tengo que hacer un ejercicio para validar el calculo del DNI.
Al principio funcionaba bien hasta que le agregue otro script con la funcion isNaN y dejo de funcionar, borre lo que le habia agregado pero sigue igual.
No veo que haya ningun error, me sale por invalido si pongo mal los digitos y luego siempre por invalido pero nunca por valido.
Muchas gracias!!!!!!!Saludos!!!
Codigo:
<body>
<div id="contenedor">
<div><h1>Calculo de Letra de DNI</h1></div>
<div><form name="Letra_DNI">
<div><p>Nombre*:</p></div>
<div><input type="text" name="nombre" /></div>
<div><p>DNI*:</p></div>
<div><input type="text" name="dni" id="dni" maxlenght="11" size="11"/></div>
<div><p>Letra*:</p></div>
<div><input type="text" name="letra" id="letra" size="15px"/></div>
<div class="class">
<input type="button" value=" Calcular " onClick="calculoLetraDni(dni,letra)" size=50px />
<input type="reset" name="btnLimpiar" value=" Limpiar " id="reset" onClick="this.Letra_DNI.reset()"/></div>
</form></div>
</body>
script externo:
function calculoLetraDni (dni,letra)
{
var sc_numero_dni = document.getElementById("dni").value;
var sc_letra_dni = document.getElementById("letra").value;
var sc_letra_calculada;
var sc_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"];
var sc_resto=1;
if (sc_numero_dni < 0 || sc_numero_dni > 99999999) {
alert("El numero de dni es invalido");
}
else {
sc_resto = sc_numero_dni % 23;
sc_letra_calculada = sc_letras[sc_resto];
if (sc_letra_calculada == sc_letra_dni) {
alert("El numero y la letra del dni son validos");
}
else {
alert("El numero y/o la letra del dni son invalidos");
}
}
}