Alerta de JavaScript borra campos de formulario

  • devilwood
  • Silver Member
  • Silver Member
  • Avatar de Usuario
  • Registrado: Nov 18, 2007
  • Mensajes: 429
  • Status: Offline

Nota Enero 6th, 2012, 3:53 pm

Sólo corrí en esto hoy como me manejo de algunas validaciones de forma en el lado del cliente. Normalmente reviso todo del lado del servidor, pero en este caso deba usar JS. Así que un simple buscar nombre y apellido ver si están vacías. Si están vacías luego tirar un cuadro de alerta y establecer el foco en el campo del error. El problema es cuando me golpeó OK en la ventana de alerta se borran todos los campos que son rellenados. Ive probado en IE y Chrome. De alguna manera la página es refrescante y Im falta algo el valor false:

Código: [ Select ]
function validateform(form)
{
    
    if (form.fname.value == "") {
        alert('Please fill in your first name.');
        form.fname.focus();
        return false;
    } else if (form.lname.value == "") {
        alert('Please fill in your last name.');
        form.lname.focus();
        return false;
    } else {
    return true;
    }
}


<form name="maxform" method="POST" action="" onsubmit="" >
        <input type="text" name='fname' id="first_name" size="20"><br>
        <input type="text" name='lname' id="last_name" size="20"><br>
        <input type="text" name='email' id="email" size="20"><br>
        <input type="submit" value="Submit" name="Submit" onClick="validateform(this.form)" />
</form>
  1. function validateform(form)
  2. {
  3.     
  4.     if (form.fname.value == "") {
  5.         alert('Please fill in your first name.');
  6.         form.fname.focus();
  7.         return false;
  8.     } else if (form.lname.value == "") {
  9.         alert('Please fill in your last name.');
  10.         form.lname.focus();
  11.         return false;
  12.     } else {
  13.     return true;
  14.     }
  15. }
  16. <form name="maxform" method="POST" action="" onsubmit="" >
  17.         <input type="text" name='fname' id="first_name" size="20"><br>
  18.         <input type="text" name='lname' id="last_name" size="20"><br>
  19.         <input type="text" name='email' id="email" size="20"><br>
  20.         <input type="submit" value="Submit" name="Submit" onClick="validateform(this.form)" />
  21. </form>



Si Añadir onsubmit = "return false" a continuación, cuando haga clic en enviar y obtener validación de formularios y si recibo una alerta de cuadro y pulse OK luego permanecen rellenados todos los campos. Sin embargo, onsubmit se establece en false para no presentar el formulario incluso cuando validateform pasa por lo no funciona bien. Esto es donde la página debe ser refrescante, pero no puedo parecen de mantener los campos que ya rellenados.
  • Anonymous
  • Bot
  • No Avatar
  • Registrado: 25 Feb 2008
  • Mensajes: ?
  • Loc: Ozzuland
  • Status: Online

Nota Enero 6th, 2012, 3:53 pm

  • ocbohye
  • Born
  • Born
  • No Avatar
  • Registrado: Ene 08, 2012
  • Mensajes: 2
  • Status: Offline

Nota Enero 8th, 2012, 8:01 pm

Esto sucede porque se envía el formulario. Debe detenerla antes de hacerlo.

Intente configurar el JS en onsubmit.

Cambiar a este

&lt; nombre del formulario = "maxform" method = acción "POST" = "" onsubmit="validateform(this);" &gt;
&lt; input type = "text" name = "fname" id = "first_name" tamaño = "20" &gt;&lt; br &gt;
&lt; input type = "text" name = "lname" id = "last_name" tamaño = "20" &gt;&lt; br &gt;
&lt; input type = "text" name = "correo electrónico" id = "correo electrónico" tamaño = "20" &gt;&lt; br &gt;
&lt; input type = "submit" valor = "Enviar" nombre = "Enviar" / &gt;
&lt;/form&gt;
  • Carrotbob
  • Born
  • Born
  • No Avatar
  • Registrado: Ene 09, 2012
  • Mensajes: 1
  • Status: Offline

Nota Enero 9th, 2012, 7:38 am

Recuerdo que hubo un verdadero buen artículo acerca de en la reciente edición de diario de los desarrolladores de Software. ¿Quieres podría registrar su sitio SDJ

Saludos
  • devilwood
  • Silver Member
  • Silver Member
  • Avatar de Usuario
  • Registrado: Nov 18, 2007
  • Mensajes: 429
  • Status: Offline

Nota Enero 23rd, 2012, 7:38 pm

No he aún encontrado el artículo sobre SDJ pocos búsquedas. Im va a mantener en cuando tengo más tiempo.

Conseguí la forma sustentada lo. Lamentablemente, sufrió varios cambios y Ive sido arropado con un montón de cosas, pero debe trabajar el método onsubmit por ocbohye. Sin embargo, mi trabajo ha cambiado tanto desde este puesto que no es lo mismo incluso. Terminé renovando un montón de cosas. Sin embargo, quiero decir que la forma correcta de mencionar todavía no estaba trabajando para mis propósitos. Gracias por las respuestas, pero su saber un punto discutible para mí. ¿Desea intentar encontrar ese artículo, como parece que hay algunos problemas con la validación de formularios mediante JS en la actualidad.

Publicar Información

  • Total de mensajes en este tema: 4 mensajes
  • Usuarios navegando por este Foro: Kurthead+1 y 140 invitados
  • No puede abrir nuevos temas en este Foro
  • No puede responder a temas en este Foro
  • No puede editar sus mensajes en este Foro
  • No puede borrar sus mensajes en este Foro
  • No puede enviar adjuntos en este Foro
 
 

© 2011 Unmelted, LLC. Ozzu® es una marca registrada de Unmelted, LLC