Hola a todos, tengo esta función, para validar datos antes de enviar un formulario. No se mucho de javascript y me estoy liando, es sencillo pero tengo muchas dudas.
En mi formulario tengo un select option, para seleccionar si el tipo de documento que se va a introducir es un nif, un dni o un pasaporte.
Y no se como meter la comprobacion dentro de mi funcion. Tampoco se como validar un dni en condiciones, ya que tengo una funcion (la voy a poner mas abajo, pero no me funciona bien)
Espero me podais ayudar.
Código HTML:
function Registrar()
{
if (document.frmdatos.nombre.value=='')
{
alert('Debe de escribir su nombre');
document.frmdatos.nombre.focus();
return;
}
if (document.frmdatos.primer_apellido.value=='')
{
alert('Debe de escribir sus apellidos');
document.frmdatos.primer_apellido.focus();
return;
}
if (document.frmdatos.segundo_apellido.value=='')
{
alert('Debe de escribir sus apellidos');
document.frmdatos.segundo_apellido.focus();
return;
}
if (document.frmdatos.documento.value=='')
{
alert('Debe de escribir su DNI');
document.frmdatos.documento.focus();
return;
}
if (document.frmdatos.documento.value<='')
{
alert('Debe de escribir su DNI');
document.frmdatos.documento.focus();
return;
}
if (document.frmdatos.nombre_via.value=='')
{
alert('Debe de escribir su domicilio');
document.frmdatos.nombre_via.focus();
return;
}
if (document.frmdatos.localidad.value=='')
{
alert('Debe de escribir su localidad');
document.frmdatos.localidad.focus();
return;
}
if (document.frmdatos.municipio.value=='')
{
alert('Debe de escribir su municipio');
document.frmdatos.municipio.focus();
return;
}
if (document.frmdatos.cp.value=='')
{
alert('Debe de escribir su codigo postal');
document.frmdatos.cp.focus();
return;
}
if (document.frmdatos.telefono1.value=='')
{
alert('Debe de escribir su telefono');
document.frmdatos.telefono1.focus();
return;
}
if (document.frmdatos.email.value=='')
{
alert('Debe de escribir su email');
document.frmdatos.email.focus();
return;
}
if (document.frmdatos.nss.value=='')
{
alert('Debe de escribir su nº seguridad social');
document.frmdatos.nss.focus();
return;
}
function nif(dni) {
numero = dni.substr(0,dni.length-1);
let = dni.substr(dni.length-1,1);
numero = numero % 23;
letra='TRWAGMYFPDXBNJZSQVHLCKET';
letra=letra.substring(numero,numero+1);
if (letra!=let)
alert('Dni erroneo');
}
if (confirm('Estas seguro de solicitar su inscripción') == true)
{
document.frmdatos.txtok.value="ADD";
document.frmdatos.submit();
}
}
Los demas datos me funcionan pero el validar DNI, al cambiar de 'input', me salta el error, pero al mandar el formulario, me deja mandarlo haya lo que haya puesto en el input....
Cualquier aporte sea cual sea me vale, estoy un poco en blanco. Un saludo amigos, y gracias.