2010-04-27 7 views
0

Je fais une recherche jquery back end des données d'une table DB ... jusqu'à ce que je récupère les données de la table ... comment puis-je montrer une image comme partout où elle est montrée comme recherche ou quelque chose comme lemontrant une image jusqu'à ce que le contenu soit chargé


J'ai un petit doute .. Mon projet a grossi. partout où la fonction .change est utilisée. puis-je écrire un code global comme quand une fonction de changement est appelée ... montre l'image jusqu'à ce que les données soient chargées ???

+0

Si nous savons comment vous faites votre appel, il sera plus facile de fournir une suggestion. Essayez de poster le fichier .ajax, .post, .get ou autre. – justkt

Répondre

4

Une autre façon est d'utiliser .ajaxSetup $ pour faire l'image show sur toutes vos requêtes:

$.ajaxSetup({ 

beforeSend: function (XMLHttpRequest) { 
    $("#loading").show(); 
}, 

complete: function (XMLHttpRequest, textStatus) { 
$("#loading").hide(); 
} 
}); 
3

Ayez cette image sur votre page d'abord ...

<img id="loading" src="loading.gif" /> 

puis avec jQuery Il suffit de faire ceci:

$(function(){ 
    $("#loading").hide(); 
}); 

de s'il est un appel ajax (que je pense qu'il est) faire :

$.ajax({ 
    url: 'ajax/test.html', 
    success: function(data) { 
     $("#loading").hide(); 
    } 
}); 
+1

peut être "plus sûr" d'utiliser "complète" au lieu de "succès" – hunter

+1

vous voulez probablement dire $ (function() {$ ("# loading"). Show()}); ?;) – DCrystal

+1

Cela dépend de la façon dont vous le regardez, je suppose. Je pense qu'il est déjà visible sur la page, mais vous pouvez ajouter le .show() avant l'appel .ajax – hunter

0

Je viens d'utiliser le code comme

$(function(){ 
$('#id').change(function() 
{ 
$.post('url.php',{name:$("#name").val()},function(data) 
{ 
$("#html").html(data); 
}); 
}); 
}); 

donc je dois utiliser le i mge.show() ... saillir avant

rite $("#html").html(data);?

+0

Non, avant $ ("# html"). Html (données); vous voulez probablement cacher l'image. Et avant l'appel ajax - montrez-le (ou ne faites rien si votre image n'a pas été cachée avant) – DCrystal

+0

okie .. vous voulez dire après $ ('# id'). Changer (function() { J'ai besoin de montrer l'image et avant $ ("# html"). html (données); Je dois cacher l'image. – Hacker

Questions connexes