pasa que hace una llamada asincrónica, podes usar el parámetro async:false pero da una sensación de bloqueo si tarda mucho
porque no usas remote?
fijate la doc
http://docs.jquery.com/Plugins/Valid...remote#options
Código HTML:
Ver original <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script> <script type="text/javascript" src="http://ajax.microsoft.com/ajax/jquery.validate/1.7/jquery.validate.min.js"></script> <script type="text/javascript"> $(document).ready(function(){
$("#form").validate({
rules:{
codart:{
remote: {
url: "x.php",
type: "post",
data: {
idg: function() {
return $("#idg").val();
},
idsubg: function() {
return $("#idsubg").val();
}
}
}
}
},
messages:{
codart:{
remote:"mensaje"
}
},
submitHandler:function(){
alert("Los datos han sido enviados");
}
})
})
<form id="form" name="form" action=""> <input type="text" id="codart" name="codart" /> <input type="submit" value="Registrar" />