Foros del Web » Programando para Internet » Jquery »

Poner una alerta validando con Jquery

Estas en el tema de Poner una alerta validando con Jquery en el foro de Jquery en Foros del Web. Hola a todos, tengo una consulta, quiero validar mi formulario antes grabar, pero me refiero a una validacion de alerts, quiero algo asi, si tengo ...
  #1 (permalink)  
Antiguo 16/10/2012, 11:04
Avatar de Sumerio  
Fecha de Ingreso: octubre-2009
Mensajes: 195
Antigüedad: 14 años, 6 meses
Puntos: 6
Pregunta Poner una alerta validando con Jquery

Hola a todos, tengo una consulta, quiero validar mi formulario antes grabar, pero me refiero a una validacion de alerts, quiero algo asi, si tengo dos texboxs, que no estan llenos, me salga un alert con listando que los dos campos son requeridos, pero un alert con mas perfomance.

Hace algun tiempo, encontre una validacion como esta, pero no pude implementarlo porque no tenia las librerias jquery:

Código:
<script language="javascript">
 
function grabar(){
             
            if($("#form_base").validate()) {
                var msg='';

                var f = document.forms[0];
                
                if(document.all('bean.nmroExpdntePrlmnar').value == ''){
                        msg+='<br/>- Número Registro Informe Preliminar.';
                }
                if(document.all('bean.fchaExpdntePrlmnar').value == ''){
                        msg+='<br/>- Fecha Registro Informe Preliminar.';
                }
                                 
                if(msg!=''){
                    var finalMsg='<p>'
                    finalMsg+='Los siguientes campos son obligatorios:';
                    finalMsg+=msg;
                    finalMsg+='</p>'
                    $('#msg').html(finalMsg);
                    $('#msg').dialog({
                        autoOpen: false,
                        width: 400,
                        modal : true,
                        title : 'Alerta',
                        buttons: {
                            "Aceptar": function() { 
                                $(this).dialog("close"); 
                            }
                        }
                    });
                    $('#msg').dialog('open');

                }else if($("#form_base").valid()){
                    
                    f.action = "${ctx}"+myBasePath+"grabarRegistro.action?forward=pestanaFinal";
                    f.submit();

                }
            }else{
                 $('#msg').html('<p>Debe ingresar los campos correctamente</p>');
                    $('#msg').dialog({
                        autoOpen: false,
                        width: 400,
                        modal : true,
                        title : 'Alerta',
                        buttons: {
                            "Aceptar": function() { 
                                    $(this).dialog("close"); 
                            }
                        }
                    });
                    $('#msg').dialog('open');
             }              
        }    

       function myOnReadyFn(){
                        $("#criterioBusqueda").accordion({ header: "div>:first",autoHeight: false });
                        $("#resultadoBusqueda").accordion({ header: "div>:first",autoHeight: false });
                        $( "input:submit, a, button", ".demo" ).button();
                        $( "#cbxUnidadFis" ).combobox({width:300, inputId :'inputCbxUnidadFis'});                 
                        $( "#cbxTtipo" ).combobox();
                        $( "#IGdtpFechaRegistroInformePreliminar" ).datepicker($.datepicker_es);
                };

</script>

<form  theme="simple" id="form_base">

<input type="text" id="DRdtpFechaRegistroInformePreliminar"  name="bean.drFchaEmision" cssClass="text ui-widget-content ui-corner-all" cssStyle="width:100"  size="50"/>

</form>

Última edición por Sumerio; 16/10/2012 a las 11:09
  #2 (permalink)  
Antiguo 16/10/2012, 11:47
Avatar de djaevi  
Fecha de Ingreso: marzo-2007
Ubicación: Moreno, Buenos Aires
Mensajes: 400
Antigüedad: 17 años, 1 mes
Puntos: 47
Respuesta: Poner una alerta validando con Jquery

A que re referis con alerts con mas performance? en si podes hacer 2 cosas una funcion que vaya concatenando errores en una variable y luego haga un alert o podes crear un div invisible y mostrarlo si hay errores simulando un alert pero claro al div podes darle un ejor diseño si es a eso a lo que te refieres con performance:

Opcion con alerts:

Código Javascript:
Ver original
  1. function validar() {
  2.     var errores = "";
  3.     var formulario = document.getElementById("myForm");
  4.     if (formulario.campoX == "") {
  5.         errores += "El campo X es requerido\n";
  6.     }
  7.     if (formulario.campoY == "") {
  8.         errores += "El campo Y es requerido\n";
  9.     }
  10.     alert(errores);
  11. }

Opcion con html:

Código Javascript:
Ver original
  1. function validar() {
  2.     var errores = "";
  3.     var formulario = document.getElementById("myForm");
  4.     var divOculto = document.getElementById("divOculto");
  5.     if (formulario.campoX == "") {
  6.         errores += "<p>El campo X es requerido</p>";
  7.     }
  8.     if (formulario.campoY == "") {
  9.         errores += "<p>El campo Y es requerido</p>";
  10.     }
  11.     divOculto.innerHTML = "";
  12.     divOculto.innerHTML = errores;
  13.     divOculto.style.display = "block";
  14. }

Código HTML:
Ver original
  1. <div id="divOculto" style="display:none;"></div>
  2. <form id="myForm" method="post" action="archivo">
  3. <input type="text" name="campoX">
  4. <input type="text" name="campoY">
  5. </form>

Prueba si te funciona

Saludos
  #3 (permalink)  
Antiguo 16/10/2012, 11:56
Avatar de Sumerio  
Fecha de Ingreso: octubre-2009
Mensajes: 195
Antigüedad: 14 años, 6 meses
Puntos: 6
Sonrisa Respuesta: Poner una alerta validando con Jquery

Asi es, pero con jquery alguien tiene otra alternativa.
  #4 (permalink)  
Antiguo 16/10/2012, 13:48
Avatar de beguem  
Fecha de Ingreso: octubre-2012
Mensajes: 6
Antigüedad: 11 años, 6 meses
Puntos: 0
Respuesta: Poner una alerta validando con Jquery

con jquery me parece que seria asi:
Código:
$(document).ready(function(){
$("#campox").change(function(){if ($(this)=="") {
alert('El campo X es requerido');
}});
$("#campoy").change(function(){if ($(this)=="") {
alert('El campo Y es requerido');
}});
});
y con un input asi
Código:
$(document).ready(function(){
$("#terminar").click(function(){if ($("#campox")=="") {
alert('El campo X es requerido');
}
if ($("#campoy")=="") {
alert('El campo Y es requerido');
}});
});
Código HTML:
<form id="myForm" method="post" action="archivo">
<input type="text" id="campox">
<input type="text" id="campoy">
<input type="submit" value="terminar" id="terminar">
</form> 

Última edición por beguem; 16/10/2012 a las 14:03

Etiquetas: alerta, formulario, html, input, validador
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 00:00.