Salve a tutti,

vi posto di seguito il codice che sto utilizzando al momento per effettuare la validazione del form in tempo reale, e di conseguenza il submit dei dati ad uno script php che elabora gli stessi e restituisce un messaggio di operazione effettuata.

Vorrei che IL TUTTO fosse fatto SENZA cambiare pagina!

codice:
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>TEST</title>
</head>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script type="text/javascript" src="http://jzaefferer.github.com/jquery-validation/jquery.validate.js"></script>

<script type="text/javascript">


$(document).ready(function(){

$('#val_form').validate({
		rules: {
			nome: {
				required: true,
				minlength: "2"	
			},
			cognome: {
				required: true,
				minlength: "2"
			}	
		},
		
		messages: {
			nome: {
				required: "Campo obbligatorio!",
				minlength: "Nome troppo corto!"
			}	
		}
	});




$('#submit').click(function(){
	$.ajax({
		type:"POST",
		url: "check.php",
		data: {nome: document.getElementById('nome').value, cognome: document.getElementById('cognome').value},
			success:function(){
				$('#validation2').html(msg);
			}
		}
	);
});
});
</script>
<body>

<div id="validation">
<form method="post" id="val_form" name="val_form" action="">
<label for="nome">Nome: *</label>
<input id="nome" name="nome" type="text" required/>


<label for="cognome">Cognome: * </label>
<input id="cognome" name="cognome" type="text" required/>

<div id="button">
	<input type="submit" id="submit" value="invia"/>
</div>
<div id="validation2"></div>
</form>
</div>


</body>
</html>
Supponiamo che lo script "check.php" restituisca solo un messaggio di avvenuta registrazione.

La validazione dei campi in tempo reale è totalmente funzionante, il mio problema è che il submit dei dati non viene fatto regolarmente e il messaggio non appare, anzi appare solo nel momento in cui invio i dati con i campi vuoti, dove sbaglio ??

Ringrazio tutti e aspetto il vostro aiuto.