• Lunes 23 de Diciembre de 2024, 15:56

Autor Tema:  Validar Formularios Al Dar Enter  (Leído 8477 veces)

MauricioDev

  • Nuevo Miembro
  • *
  • Mensajes: 3
    • Ver Perfil
Validar Formularios Al Dar Enter
« en: Viernes 25 de Febrero de 2005, 18:54 »
0
Hola con todos....Estoy desarrollando un sitio web en Asp .Net (Visual Basic), en el tengo formularios con sus respectivas validaciones y funcionan muy bien excepto cuando doy un ENTER..... ya que al hacer esto el formulario se recarga sin tomar en cuenta las validaciones hechas.
Intente solucionarlo controlando la tecla ENTER pero los textbox en asp .net no traen el evento KeyDown y mucho menos el evento ENTER, luego visitando otros sitios encontre que solucionan este problema con scripts de java como este:

<script language="javascript">
<!--
var Page_ValidationActive = false;
if (typeof(clientInformation) != "undefined" && clientInformation.appName.indexOf("Explorer") != -1) {
    if ((typeof(Page_ValidationVer) != "undefined") && (Page_ValidationVer == "125"))
        ValidatorOnLoad();
}

function ValidatorOnSubmit() {
    if (Page_ValidationActive) {
        ValidatorCommonOnSubmit();
    }
}
// -->
</script>

Luego este es llamdo en la Etiqueta <Form onsubmit="ValidatorOnSubmit();">


Pero no lo puedo Interpretar bien..... Si me pueden dar una mano para solucionar este problema les estaría muy agradecido......

sergiotarrillo

  • Moderador
  • ******
  • Mensajes: 1059
    • Ver Perfil
    • http://sergiot2.com/blog
Re: Validar Formularios Al Dar Enter
« Respuesta #1 en: Sábado 12 de Marzo de 2005, 22:32 »
0
Hola que tal porque no usas los Web Server Control, especificamente los Controles de Validacion que trae el ASP.NET, como:

RequiredFieldValidator -> para que caja se llene si o si.
CompareValidator -> para comparar el ingreso en una caja con otra.
RegularExpresionValidator -> para validar el ingreso de expresiones regulares como correos, codigo postales etc.
RangeValidator -> para comparar el ingreso  en cierto rango de un tipo de datos.
CustomValidator -> estes es especifacamente para formulas o para lo que quieras.

aca te mando algunos links:

Validacion de controles

Controles de Validacion en ASP.NET

P.D.: Estos controles te generan codigo JavaScript en el cliente.


Sergio Tarrillo
Blog]miBlog[/url]

No me visiten!

MauricioDev

  • Nuevo Miembro
  • *
  • Mensajes: 3
    • Ver Perfil
Re: Validar Formularios Al Dar Enter
« Respuesta #2 en: Lunes 14 de Marzo de 2005, 21:35 »
0
Gracias pero esa no era mi pregunta, el formulario ya contiene controles de validación y funcionan muy bien al presionar un botón pero al dar enter no hacia nada... pero ya encontre la solución y es la siguiente:
1. Necesitamos una función en javascript para capturar la tecla ENTER

      <script language="javascript">
      function atrapa_enter(btn,event){
         if (document.all) {
            if (event.keyCode==13){
               event.returnValue=false;
               event.cancel=true;
               btn.click();
            }
         }
         else if (document.getElementById){
            if (event.which==13){
               event.returnValue=false;
               event.cancel=true;
               btn.click();
            }
         }
         else if (document.layers){
            if (event.which==13){
               event.returnValue=false;
               event.cancel=true;
               btn.click();
            }
         }
      }
      </script>
2.-Luego creamos este procedimiento en el code behind.

 Private Sub SetDefaultButton( txt as TextBox, defaultButton as ImageButton )
 txt.Attributes.Add("onkeydown", "fnTrapKD(" + defaultButton.ClientID + ",event)");
End sub

3.- Luego lo podemos llamar en el lugar que lo necesitemos puede ser en el load del Web form asi:

      SetDefaultButton(TextBox2, Button2)

Con esto podemos dar el comportamiento que deseemos en este caso al dar enter
luego de escribir algo en un texbox.
Espero le ayude a alguien con esto........