Comunidad de diseño web y desarrollo en internet online

Formulario Botón submit

Citar            
MensajeEscrito el 20 Oct 2012 03:15 pm
Buenas a todos, estoy con un problema, la cosa de este formulario, es que valida si están correctos los datos, si no no deja enviar el formulario.
Pues bueno, el problema que tengo, es que no logro hacer que Haga post cuando el formulario este correctamente bien... El problema esta en el submit

Código HTML :

<script src="jquery-1.7.2.min.js"></script>
<script type="text/javascript" src="http://www.jeasyui.com/easyui/jquery.easyui.min.js"></script>

<script type="text/javascript" src="jquery.validate.js"></script>
</head>
<body>

<div id="form_wrapper" class="form_wrapper">
<h3>Registrate</h3>
<div class="column">
<div><form method="POST" action="#" id="regForm"></div>
<div>
<label>Nombre:</label>
<input id="FirstName" style="text-align: center" autocomplete="off" placeholder="Nombre" name="FirstName" onkeypress="return validar(event)" type="text" />
<span class="formerr"></span>
</div>
<div>
<label>Contraseña:</label>
<input autocomplete="off" style="text-align: center" class="pwd" id="password" placeholder="Contraseña" onKeyPress="return lettersOnly(evt)" type="password" name="Pass" /><span class="formerr"></span></div>
<div>
<label>Confirmar contraseña:</label>
<input autocomplete="off" style="text-align: center" class="pwd" id="password2" placeholder="Contraseña" onKeyPress="return lettersOnly(evt)" type="password" name="Pass" /><span class="formerr"></span>
</div>
<div>
<label>Edad (10 - 65):<span class="remember">
</span></label>
<input id="Age" style="text-align: center" autocomplete="off" onkeypress="javascript:return validarNro(event)" type="text" name="Age" />
<span class="formerr"></span>
</div>
</div>
<div class="column">
<div>
<label>Apellido:</label>
<input id="LastName" style="text-align: center" autocomplete="off" placeholder="Apellido" onkeypress="return validar(event)" type="text" name="LastName" />
<span class="formerr"></span>
</div>
<div>
<label>Email:</label>
<input type="text" style="text-align: center" autocomplete="off" placeholder="[email protected]" name="Email" id="Email" />
<span class="formerr"></span>
</div>
<div>
<label>Sexo:</label>
<select class="select" name="Gender"><br>
<option value="Male" class="dos" selected>Masculino</option> <option value="Female" class="uno">Feminino</option></select>
</div>
</div>
<div class="bottom">
<input type="submit" value="Registrarse" class="loginbutton" />
</form>
<div class="remember"><input type="submits" value="Atrás" onClick="history.back()" /></div>
<a class="linkform">Recuerda escribir tus datos correctamente. </a>
</div>
<script>

function validar(e) {
tecla = (document.all) ? e.keyCode : e.which;
if (tecla==8) return true;
patron =/[abcdefghijklmnñopqrstuvwxyzABCDEFGHIJKLMNÑOPQRSTUV WXYZ\s]/;
te = String.fromCharCode(tecla);
return patron.test(te);
}
function validarNro(e) {
var key;
if(window.event) // IE
{
key = e.keyCode;
}
else if(e.which) // Netscape/Firefox/Opera
{
key = e.which;
}

if (key < 48 || key > 57)
{
if(key == 46 || key == 8) // Detectar . (punto) y backspace (retroceso)
{ return true; }
else 
{ return false; }
}
return true;
}
$(function() {
$("input#FirstName").on("keyup", function() {
var
name = $(this).val(),
$err = $(this).next("span.formerr");
$err.html("");
$(this).css("border", "2px solid red");
if(name.length < 4) {
$err.html("<br>Tu nombre es demasiado corto!");
return false;
}
var filter = /^[A-Z][a-z]{1,3}[A-Z]?[a-z]*$/;
if (!filter.test(name)) {
$err.html("<br>Tu Nombre es invalido.<br>El formato es: Nombre</div>");
return false;
}

$(this).css("border", "2px solid green");
});
$("input#Age").on("keyup", function() {
var
name = $(this).val(),
$err = $(this).next("span.formerr");
$err.html("");
$(this).css("border", "2px solid red");
if(name.length > 2) {
$err.html("<br>¿Tan viejo eres?");
return false;
}
var filter = /^[0-9][0-9]]*$/;
if (!filter.test(name)) {
$err.html("<br>Tu edad es invalida.<br>El formato es EJ: 12</div>");
return false;
}

$(this).css("border", "2px solid green");
});
$("input#LastName").on("keyup", function() {
var
name = $(this).val(),
$err = $(this).next("span.formerr");
$err.html("");
$(this).css("border", "2px solid red");
if(name.length < 4) {
$err.html("<br>Tu Apellido es demasiado corto!");
return false;
}
var filter = /^[A-Z][a-z]{1,3}[A-Z]?[a-z]*$/;
if (!filter.test(name)) {
$err.html("<br>Tu Apellido es invalido.<br>El formato es: Apellido</div>");
return false;
}

$(this).css("border", "2px solid green");
});

$("input.pwd").on('keyup', function() {
var
name = $(this).val(),
$err = $(this).next("span.formerr");
$err.html("");
$(this).css("border", "2px solid red");
if(name.length < 5) {
$err.html("<br>Tu contraseña es insegura o muy corta!");
return false;
}
if($("input#password").val() != $("input#password2").val()) {
$("input#password").css("border", "1px solid red").next("span.formerr").html("<br>Las contraseñas no coinciden.");
$("input#password2").css("border", "1px solid red").next("span.formerr").html("<br>Las contraseñas no coinciden.");
return false;
}
$("input#password").css("border", "2px solid green").next("span.formerr").html("");
$("input#password2").css("border", "2px solid green").next("span.formerr").html("");
});

$("input#Email").on("keyup", function() {
var
emailAddr = $(this).val(),
$err = $(this).next("span.formerr");
$err.html("");
$(this).css("border", "2px solid red");
var filter = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
if (!filter.test(emailAddr)) {
$err.html("<br>Tu dirección email es invalida.");
return false;
}
$("input#email").css("border", "2px solid green").next("span.formerr").html("");
});

$("#regForm").on("submit", function(e) {
e.preventDefault();
var letPass = 1;

var toSend = {};
toSend["checkRegister"] = true;


var $inPuts = $("#regForm").find("input");
$inPuts.each( function() {
if($(this).attr("type") != "submit") {
toSend[$(this).attr("id")] = $(this).val();
if($(this).next("span.formerr").html().length > 3) var letPass = 0;
}
});   



$("input#FirstName").trigger("keyup");
$("input#LastName").trigger("keyup");
$("input#Email").trigger("keyup");
$("input.pwd").trigger("keyup");
$("input#Age").trigger("keyup");


if(letPass == 1) 
{
alert("Hola Prueba");

$.getJSON("cuenta.php", toSend, function(e) {

});
}
});
});



</script>


Quiero hacer un post en un archivo .php distinto y no logro hacer que pase la prueba de la validación de campos y luego pase a el post en el otro archivo.

Saludos cordiales y gracias de antemano al que me ayude

Estoy dias tratando esto, esta complicado.

Por TrYFaKe

1 de clabLevel



 

chrome
Citar            
MensajeEscrito el 20 Oct 2012 03:50 pm
Intente con este codigo, el del submit y no logro que haga post o que salga el alert.

Código HTML :

$("#regForm").on("submit", function(e) {
      e.preventDefault();
      var letPass = 1;
      
      var toSend = {};
      toSend["checkRegister"] = true;
      
      
      var $inPuts = $("#regForm").find("input");
      $inPuts.each( function() {
         if($(this).attr("type") != "submit") {
            toSend[$(this).attr("id")] = $(this).val();
           if($(this).next("span.formerr").html().length > 3) var letPass = 0;
         }
      });   
      
      $("input#FirstName").trigger("keyup");
      $("input#LastName").trigger("keyup");
      $("input#Email").trigger("keyup");
      $("input.pwd").trigger("keyup");
      $("input#Age").trigger("keyup");


        if(letPass == 1) 
      {
      $.getJSON("cuenta.php", toSend,  function(d) {
         if(d.error) 
         {
               $("#error").html(d.error).fadeIn(250);
               setTimeout( function() {
                  $("#error").fadeOut(250);
               }, 5000);
               return false;
         } 
         if(d.success) 
         {
         alert("Hola Prueba");
         }
      });   
       }   
   });

Por TrYFaKe

1 de clabLevel



 

chrome

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.