Questo dovrebbe essere semplice, ma mi sta facendo impazzire. Ho un modulo html5 che sto inviando con ajax. Se inserisci un valore non valido, c'è una risposta popup che ti dice così. Come posso verificare che le voci siano valide prima di eseguire il mio invio ajax?Convalida HTML5 prima di inviare ajax
forma:
<form id="contactForm" onsubmit="return false;">
<label for="name">Name:</label>
<input type="text" name="name" id="name" required placeholder="Name" />
<label for="subject">Subject:</label>
<input type="text" name="subject" id="subject" required placeholder="Subject" />
<label for="email">Email:</label>
<input type="email" name="email" id="email" required placeholder="[email protected]" />
<label for="message">Message:</label>
<textarea name="message" id="message" required></textarea>
<input type="submit" id="submit"/>
</form>
conferma:
$('#submit').click(function(){
var name = $("input#name").val();
var subject = $("input#subject").val();
var email = $("input#email").val();
var message = $("input#message").val();
var dataString = 'email=' + email + '&message=' + message + '&subject=' + subject + '&name=' + name ;
$.ajax({
url: "scripts/mail.php",
type: 'POST',
data: dataString,
success: function(msg){
disablePopupContact();
$("#popupMessageSent").css("visibility", "visible");
},
error: function() {
alert("Bad submit");
}
});
});
'false' tornare sulla pubblica un evento, come fatto da OP, è quello che cercavo .. –
Tornando falsa (impedendo l'azione di default) ... Vedi la risposta da csbarnes che è più accurata. – Nuxwin