jQuery: impedire che un form in AJAX invii richieste multiple simultanee
Con jQuery possiamo impedire che un form in AJAX invii richieste multiple simultanee.
Si tratta di impedire che il form venga inviato con il tasto Enter e di disabilitare il pulsante di invio durante la richiesta AJAX.
$( "#form" ).on( "keydown", function( e ) {
if( e.keyCode === 13 ) {
e.preventDefault();
}
});
$( "#form" ).on( "submit", function( e ) {
e.preventDefault();
var $form = $( this );
$form.find( ":submit" ).attr( "disabled", "disabled" );
$.post( "/api/form", $form.serialize(), function( response ) {
$form.find( ":submit" ).removeAttr( "disabled" );
});
});