È davvero semplice. Si dispone di un'immagine, inizialmente nascosta:
<img src="myloadingimage.gif" style="display: none;" id="loading_image">
si effettua una richiesta AJAX:
$('#loading_image').show(); // show loading image, as request is about to start
$.ajax({
url: '..',
type: '..',
complete: function() {
// request is complete, regardless of error or success, so hide image
$('#loading_image').hide();
}
});
Non è scienza missilistica, lo prometto. :)
EDIT: In risposta al tuo commento, questo utilizza jQuery. Metti il tag jQuery quindi presumo che vada bene.
Ho anche notato che non ho risolto completamente la domanda originale, ovvero che si desidera mostrare la barra di caricamento per quella che è presumibilmente una forma regolare. Se il tag form ha un id di "MyForm", questo dovrebbe farlo:
$('#myform').submit(function() {
$('#loading_image').show(); // show animation
return true; // allow regular form submission
});
Si potrebbe anche lanciare una linea come questa in:
$(':submit',this).attr('disabled','disabled');
Se si vuole impedire agli utenti di clic su Invia più di una volta. Questo dovrebbe comunque essere verificato sul lato server ma è una bella barriera di difesa superficiale.
fonte
2009-06-11 10:04:41
potresti inserire un codice per favore? –