Foros del Web » Programando para Internet » Javascript »

duda con las alertas

Estas en el tema de duda con las alertas en el foro de Javascript en Foros del Web. bueno soy nuevo en esto de java y de a poco he ido aprendiendo, ahora intento hacer alertas en un formulario yal crearlo solo las ...
  #1 (permalink)  
Antiguo 26/08/2007, 17:50
 
Fecha de Ingreso: agosto-2007
Mensajes: 8
Antigüedad: 16 años, 8 meses
Puntos: 0
duda con las alertas

bueno soy nuevo en esto de java y de a poco he ido aprendiendo, ahora intento hacer alertas en un formulario yal crearlo solo las 2 primeras alertas me funcionan las demas no las toma no se por que siendo que estan igualmente que las demas, les dejo el codigo por ahi haber si pillan algun error y me ayudan.
de antemano muchisimas gracias.

Código:
<html>
<head>
<script language="javascript">
function validarformulario(form1){

if (form1.Nombres.value == ""){
alert("Por Favor Ingrese Sus Nombres"); form1.Nombres.focus(); return;
}
if (form1.Apellidos.value == ""){
alert("Por Favor Ingrese Sus Apellidos"); form1.Apellidos.focus(); return;
}
if (Form1.Direccion.value == ""){
alert("Por Favor Ingrese Una Direccion"); form1.Direccion.focus(); return;
}
if (form1.Rut.value == ""){
alert("Por Favor Ingrese Su Rut"); form1.Rut.focus(); return;
}
if (form1.Ciudad.value == ""){
alert("Por Favor Ingrese Una Ciudad"); form1.Ciudad.focus(); return;
}
if (Form1.Teléfono.value == ""){
alert("Por Favor Ingrese Su Número De Teléfono"); form1.Teléfono.focus(); return;
}
if (isNaN(form1.Teléfono.value) == true){
alert("Telefono Inválido.\nIngrese Su Teléfono Solo Con Caracteres Numéricos"); form1.Teléfono.focus(); form1.Teléfono.select(); return;
}
if (form1.Email.value == ""){
alert ("Por Favor Ingrese Su Email"); form1.Email.focus(); return;
}
if (form1.Email.value.indexOf('@', 1) == -1 || form1.Email.value.indexOf('.', 
	form1.Email.value.indexOf('@', 0)) == -1) {
	alert("Dirección de e-mail inválida"); form1.Email.focus(); return;
}

form1.submit();
}
</script>
</head>
<body>
<FORM METHOD="post" ACTION="mailto:[email protected]" name="form1">
<table width="220" border="0">
<tr>
<td width="66">Nombres</td>
<td width="114"><INPUT type="text" name="Nombres" size="20"></td>
</tr>
<tr>
<td width="66">Apellidos</td>
<td width="114"><INPUT type="text" name="Apellidos" size="20"></td>
</tr>

<tr>
<td width="66">Direccion</td>
<td width="114"><INPUT type="text" name="Direccion" size="20"></td>
</tr>
<tr>
<td width="66">Rut</td>
<td width="114"><INPUT type="text" name="Rut" size="20"></td>
</tr>
<tr>
<td width="66">Ciudad</td>
<td width="114"><INPUT type="text" name="Ciudad" size="20"></td>
</tr>
<tr>
<td width="66">Teléfono</td>
<td width="114"><INPUT type="text" name="Teléfono" size="20"></td>
</tr>
<tr>
<td width="66">Email</td>
<td width="114"><INPUT type="text" name="Email" size="20"></td>
</tr>
<tr>
<td width="66"><INPUT type="button" value="Enviar" onClick="validarformulario(form1)"></td>
<td width="66"><INPUT type="reset" value="Borrar"></td>
</tr>
</table>
</form>
</body>
</html>
  #2 (permalink)  
Antiguo 26/08/2007, 18:48
Avatar de derkenuke
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: self.location.href
Mensajes: 2.665
Antigüedad: 20 años, 6 meses
Puntos: 45
Re: duda con las alertas

Hola Kometa, bienvenido a los foros:

El error que veo es que a veces utilizas form1 y otras veces Form1. Tal y como lo tienes lo normal sería todo en minúsculas.

Otra cosa que debería decirte es que coloques <script type="text/javascript"> sustituyendo a <script language="javascript">, el atributo language está desaprobado.

Por último recordarte que intenémos hacer nuestros scripts compatibles con los navegadores que tengan javascript desactivado, la manera de validar correctamente es:

Código PHP:

<form action="pag.html">
....
<
button type="submit" onclick="return validador()">Env&#237;a</button>
</form
Siendo validador() una función que devuelve true o false.



Un saludo.
__________________
- Haz preguntas inteligentes, y obtendrás más y mejores respuestas.
- Antes de postearlo Inténtalo y Búscalo.
- Escribe correctamente tus mensajes.

Última edición por derkenuke; 26/08/2007 a las 18:48 Razón: formato
  #3 (permalink)  
Antiguo 26/08/2007, 20:22
 
Fecha de Ingreso: agosto-2007
Mensajes: 8
Antigüedad: 16 años, 8 meses
Puntos: 0
Re: duda con las alertas

gracias por la respuesta ya corregi las 2 primeras cosas que me dijistes pero lo ultimo no te entendi bien haber si me pudieras explicar mejor porfavor gracias =)
  #4 (permalink)  
Antiguo 26/08/2007, 22:04
Avatar de derkenuke
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: self.location.href
Mensajes: 2.665
Antigüedad: 20 años, 6 meses
Puntos: 45
Re: duda con las alertas

Lo que quiero decir es que tiene que haber un botón de tipo submit en el formulario si es que quieres que todos los usuarios sean capaces de enviarlo. Una cosa así sería más correcta:

Código PHP:
<!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" xml:lang="es" lang="es">
<
head>
<
meta http-equiv="Content-type" content="text/html;charset=iso-8859-1" />
<
meta name="Author" content="derkeNuke" />
<
title>Página nueva</title>
<
style type="text/css">
</
style>

<
script type="text/javascript">
function 
validarformulario(elFormulario){

    if (
elFormulario.Nombres.value == ""){
    
alert("Por Favor Ingrese Sus Nombres"); elFormulario.Nombres.focus(); return false;
    }
    if (
elFormulario.Apellidos.value == ""){
    
alert("Por Favor Ingrese Sus Apellidos"); elFormulario.Apellidos.focus(); return false;
    }
    if (
elFormulario.Direccion.value == ""){
    
alert("Por Favor Ingrese Una Direccion"); elFormulario.Direccion.focus(); return false;
    }
    if (
elFormulario.Rut.value == ""){
    
alert("Por Favor Ingrese Su Rut"); elFormulario.Rut.focus(); return false;
    }
    if (
elFormulario.Ciudad.value == ""){
    
alert("Por Favor Ingrese Una Ciudad"); elFormulario.Ciudad.focus(); return false;
    }
    if (
elFormulario.Teléfono.value == ""){
    
alert("Por Favor Ingrese Su Número De Teléfono"); elFormulario.Teléfono.focus(); return false;
    }
    if (
isNaN(elFormulario.Teléfono.value) == true){
    
alert("Telefono Inválido.\nIngrese Su Teléfono Solo Con Caracteres Numéricos"); elFormulario.Teléfono.focus(); elFormulario.Teléfono.select(); return false;
    }
    if (
elFormulario.Email.value == ""){
    
alert ("Por Favor Ingrese Su Email"); elFormulario.Email.focus(); return false;
    }
    if (
elFormulario.Email.value.indexOf('@'1) == -|| elFormulario.Email.value.indexOf('.'
        
elFormulario.Email.value.indexOf('@'0)) == -1) {
        
alert("Dirección de e-mail inválida"); elFormulario.Email.focus(); return false;
    }

    return 
true;
    
}
</script>

</head>

<body>

<form method="post" action="mailto:[email protected]" name="form1">
<table width="220" border="0">
<tr>
<td width="66">Nombres</td>
<td width="114"><input type="text" name="Nombres" size="20"/></td>
</tr>
<tr>
<td width="66">Apellidos</td>
<td width="114"><input type="text" name="Apellidos" size="20"/></td>
</tr>

<tr>
<td width="66">Direccion</td>
<td width="114"><input type="text" name="Direccion" size="20"/></td>
</tr>
<tr>
<td width="66">Rut</td>
<td width="114"><input type="text" name="Rut" size="20"/></td>
</tr>
<tr>
<td width="66">Ciudad</td>
<td width="114"><input type="text" name="Ciudad" size="20"/></td>
</tr>
<tr>
<td width="66">Teléfono</td>
<td width="114"><input type="text" name="Teléfono" size="20"/></td>
</tr>
<tr>
<td width="66">Email</td>
<td width="114"><input type="text" name="Email" size="20"/></td>
</tr>
<tr>
<td width="66"><input type="submit" value="Enviar" onclick="return validarformulario(this.form)"/></td>
<td width="66"><input type="reset" value="Borrar"/></td>
</tr>
</table>
</form>

</body>
</html> 
El por qué he cambiado tantas cosas lo encontrarás en el validador HTML, XHTML de la w3c.

Un saludo
__________________
- Haz preguntas inteligentes, y obtendrás más y mejores respuestas.
- Antes de postearlo Inténtalo y Búscalo.
- Escribe correctamente tus mensajes.
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 16:46.