JS - Attendre qu'une action soit terminée ...
Fermé
gaerebut
Messages postés
1017
Date d'inscription
mardi 30 octobre 2007
Statut
Membre
Dernière intervention
22 novembre 2013
-
18 août 2008 à 14:44
Tiller Messages postés 781 Date d'inscription mercredi 4 juillet 2007 Statut Membre Dernière intervention 14 septembre 2008 - 18 août 2008 à 15:40
Tiller Messages postés 781 Date d'inscription mercredi 4 juillet 2007 Statut Membre Dernière intervention 14 septembre 2008 - 18 août 2008 à 15:40
A voir également:
- JS - Attendre qu'une action soit terminée ...
- Action - Guide
- Télécharger film d'action gratuitement et rapidement - Télécharger - TV & Vidéo
- Vous devez disposer d'une autorisation pour effectuer cette action - Guide
- Action fans - Accueil - Guide arnaque
- Cette action ne peut pas être réalisée car le fichier est ouvert dans system - Guide
8 réponses
gaerebut
Messages postés
1017
Date d'inscription
mardi 30 octobre 2007
Statut
Membre
Dernière intervention
22 novembre 2013
171
18 août 2008 à 15:21
18 août 2008 à 15:21
function deploie(id, nom, div_contenu, divid, bool, num_id)
{
if(bool == 1)
{
Lister(nom, div_contenu, divid, 'q');
$(id).innerHTML = "Réduire";
}
else
{
$(id).innerHTML = "Plus d'informations ...";
$('fenetre2_'+num_id).innerHTML="";
}
}
{
if(bool == 1)
{
Lister(nom, div_contenu, divid, 'q');
$(id).innerHTML = "Réduire";
}
else
{
$(id).innerHTML = "Plus d'informations ...";
$('fenetre2_'+num_id).innerHTML="";
}
}
Tiller
Messages postés
781
Date d'inscription
mercredi 4 juillet 2007
Statut
Membre
Dernière intervention
14 septembre 2008
211
18 août 2008 à 15:25
18 août 2008 à 15:25
Lister..
gaerebut
Messages postés
1017
Date d'inscription
mardi 30 octobre 2007
Statut
Membre
Dernière intervention
22 novembre 2013
171
18 août 2008 à 15:27
18 août 2008 à 15:27
var xmlHttp
function Lister(str, page, id, variable)
{
xmlHttp=GetXmlHttpObject()
if (xmlHttp==null)
{
alert ("Votre navigateur ne supporte pas le HTTP Request")
return
}
var url="./pages/"+page+".php"
if(variable == 'q')
url=url+"?q="+str
else if(variable == 'p')
url=url+"?p="+str
url=url+"&sid="+Math.random()
if(id != 0)
xmlHttp.onreadystatechange=getStateChanged(id);
else
xmlHttp.onreadystatechange=getStateChanged(0);
xmlHttp.open("GET",url,true)
xmlHttp.send(null)
}
function Lister(str, page, id, variable)
{
xmlHttp=GetXmlHttpObject()
if (xmlHttp==null)
{
alert ("Votre navigateur ne supporte pas le HTTP Request")
return
}
var url="./pages/"+page+".php"
if(variable == 'q')
url=url+"?q="+str
else if(variable == 'p')
url=url+"?p="+str
url=url+"&sid="+Math.random()
if(id != 0)
xmlHttp.onreadystatechange=getStateChanged(id);
else
xmlHttp.onreadystatechange=getStateChanged(0);
xmlHttp.open("GET",url,true)
xmlHttp.send(null)
}
gaerebut
Messages postés
1017
Date d'inscription
mardi 30 octobre 2007
Statut
Membre
Dernière intervention
22 novembre 2013
171
18 août 2008 à 15:29
18 août 2008 à 15:29
Pardon j'ai oublié la suite de l'Ajax !
function getStateChanged(id)
{
if (id != 0)
{
if (typeof(id) === 'string')
{
id = document.getElementById(id);
}
return function()
{
if (xmlHttp.readyState==4)
{
id.innerHTML = xmlHttp.responseText;
}
}
}
else
{
return function()
{
if (xmlHttp.readyState==4)
{
act.destroy();
wm = new UI.WindowManager({ container: 'gauche_absolute' });
act = new UI.Window({height: 480, width: 430, top: 60, left: 60, windowManager: wm}).show();
act.maximize();
act.setContent(xmlHttp.responseText);
}
}
}
}
function GetXmlHttpObject()
{
var xmlHttp=null;
try
{
// Firefox, Opera 8.0+, Safari
xmlHttp=new XMLHttpRequest();
}
catch (e)
{
//Internet Explorer
try
{
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
}
return xmlHttp;
}
function getStateChanged(id)
{
if (id != 0)
{
if (typeof(id) === 'string')
{
id = document.getElementById(id);
}
return function()
{
if (xmlHttp.readyState==4)
{
id.innerHTML = xmlHttp.responseText;
}
}
}
else
{
return function()
{
if (xmlHttp.readyState==4)
{
act.destroy();
wm = new UI.WindowManager({ container: 'gauche_absolute' });
act = new UI.Window({height: 480, width: 430, top: 60, left: 60, windowManager: wm}).show();
act.maximize();
act.setContent(xmlHttp.responseText);
}
}
}
}
function GetXmlHttpObject()
{
var xmlHttp=null;
try
{
// Firefox, Opera 8.0+, Safari
xmlHttp=new XMLHttpRequest();
}
catch (e)
{
//Internet Explorer
try
{
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
}
return xmlHttp;
}
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
gaerebut
Messages postés
1017
Date d'inscription
mardi 30 octobre 2007
Statut
Membre
Dernière intervention
22 novembre 2013
171
18 août 2008 à 15:35
18 août 2008 à 15:35
var xmlHttp function Lister(str, page, id, variable) { xmlHttp=GetXmlHttpObject() if (xmlHttp==null) { alert ("Votre navigateur ne supporte pas le HTTP Request") return } var url="./pages/"+page+".php" if(variable == 'q') url=url+"?q="+str else if(variable == 'p') url=url+"?p="+str url=url+"&sid="+Math.random() if(id != 0) xmlHttp.onreadystatechange=getStateChanged(id); else xmlHttp.onreadystatechange=getStateChanged(0); xmlHttp.open("GET",url,true) xmlHttp.send(null) } function getStateChanged(id) { if (id != 0) { if (typeof(id) === 'string') { id = document.getElementById(id); } return function() { if (xmlHttp.readyState==4) { id.innerHTML = xmlHttp.responseText; } } } else { return function() { if (xmlHttp.readyState==4) { act.destroy(); wm = new UI.WindowManager({ container: 'gauche_absolute' }); act = new UI.Window({height: 480, width: 430, top: 60, left: 60, windowManager: wm}).show(); act.maximize(); act.setContent(xmlHttp.responseText); } } } } function GetXmlHttpObject() { var xmlHttp=null; try { // Firefox, Opera 8.0+, Safari xmlHttp=new XMLHttpRequest(); } catch (e) { //Internet Explorer try { xmlHttp=new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { xmlHttp=new ActiveXObject("Microsoft.XMLHTTP"); } } return xmlHttp; } function filtre(id, etat) { if($('indicateur_ville').value != '*' && id) var requete = "SELECT dess.id AS 'Id', dess.id_operateur AS 'Id_Operateur', dess.frequence, dest.ville AS 'Ville', o.nom AS 'Operateur', tf.libelle AS 'Type_Frequence', mt.libelle AS 'Mode_Transport' FROM desserte dess,operateur o, destination dest, type_frequence tf, mode_transport mt WHERE dest.id = dess.id_destination AND o.id = dess.id_operateur AND tf.id = dess.id_type_frequence AND mt.id = dess.id_mode_transport AND mt.visible = 1 AND mt.visible = 1 AND id_destination = '" + $('indicateur_ville').value + "'"; else var requete = "SELECT dess.id AS 'Id', dess.id_operateur AS 'Id_Operateur', dess.frequence, dest.ville AS 'Ville', o.nom AS 'Operateur', tf.libelle AS 'Type_Frequence', mt.libelle AS 'Mode_Transport' FROM desserte dess,operateur o, destination dest, type_frequence tf, mode_transport mt WHERE dest.id = dess.id_destination AND o.id = dess.id_operateur AND tf.id = dess.id_type_frequence AND mt.id = dess.id_mode_transport AND mt.visible = 1 AND mt.visible = 1"; for (i=0;i<=n;i++) { if (TabId[i]==id)//Si etat = 0, la ligne correspondant au tableau JS prend la valeur 0 { if (!etat) { TabVisible[i] = 0; } else//Si etat = 1, la ligne correspondant au tableau JS prend la valeur 1 { TabVisible[i] = 1; } } if(TabVisible[i] == 0) { requete += " AND dess.id_mode_transport <> " + TabId[i]; } } if($('indicateur_ville').value == '*')//Si la valeur de l'input hidden est égal a une etoile (=tout), on va tri toutes les dessertes par le nom de la ville requete += " ORDER BY Ville"; if($('indicateur_ville').value != '') //Vérification: Si on clique sur les filtres sans avoir cliqué sur une villes, les critères s'appliquent mais rien ne s'affiche (car aucune ville choisi) Lister(requete,'contenu', 0, 'p'); } function fenetre() { wm = new UI.WindowManager({ container: 'gauche_absolute' }); act = new UI.URLWindow({height: 480, width: 430, top: 60, left: 60, url: './pages/accueil.html', windowManager: wm}).show(); } function deploie(id, nom, div_contenu, divid, bool, num_id) { if(bool == 1) { Lister(nom, div_contenu, divid, 'q'); $(id).innerHTML = "Réduire"; } else { $(id).innerHTML = "Plus d'informations ..."; $('fenetre2_'+num_id).innerHTML=""; } } function pre_imprime(id, nom, divid, num_id, titre, obj) { if(confirm("Voulez-vous aussi imprimer les informations sur les contacts/opérateurs ?")) var bool = 1;//Si on clique sur oui, on affiche les infos supplémentaires else var bool = 2;//Si on clique sur non, on retire les infos supplémentaires deploie(id, nom, 'contenu_info', divid, bool, num_id);//on appelle la fonction qui affiche ou non les infos supplémentaire setTimeout("imprime(" + titre + ", " + obj + ")",3000); } function imprime(titre, obj) { //Maintenant on imprime var zi = document.getElementById(obj).innerHTML; var f = window.open("", "ZoneImpr", "height=500, width=600,toolbar=0, menubar=0, scrollbars=1, resizable=1,status=0, location=0, left=10, top=10"); f.document.body.style.color = '#000000'; f.document.body.style.backgroundColor = '#FFFFFF'; f.document.body.style.padding = "10px"; f.document.title = titre; f.document.body.innerHTML += "" + zi + ""; f.window.print(); f.window.close(); return true; }
Tiller
Messages postés
781
Date d'inscription
mercredi 4 juillet 2007
Statut
Membre
Dernière intervention
14 septembre 2008
211
18 août 2008 à 15:40
18 août 2008 à 15:40
Tu remplaces
Sa devrait etre bon
setTimeout("imprime(" + titre + ", " + obj + ")",3000); par tmpTitre = titre; tmpObj = obj; Et la place de ta fonction tu met celle la: function getStateChanged(id) { if (id != 0) { if (typeof(id) === 'string') { id = document.getElementById(id); } return function() { if (xmlHttp.readyState==4) { id.innerHTML = xmlHttp.responseText; imprime(); } } } else { return function() { if (xmlHttp.readyState==4) { act.destroy(); wm = new UI.WindowManager({ container: 'gauche_absolute' }); act = new UI.Window({height: 480, width: 430, top: 60, left: 60, windowManager: wm}).show(); act.maximize(); act.setContent(xmlHttp.responseText); imprime(); } } } } Et tu met: function imprime() { //Maintenant on imprime var zi = document.getElementById(tmpObj).innerHTML; var f = window.open("", "ZoneImpr", "height=500, width=600,toolbar=0, menubar=0, scrollbars=1, resizable=1,status=0, location=0, left=10, top=10"); f.document.body.style.color = '#000000'; f.document.body.style.backgroundColor = '#FFFFFF'; f.document.body.style.padding = "10px"; f.document.title = tmpTitre; f.document.body.innerHTML += "" + zi + ""; f.window.print(); f.window.close(); return true; }
Sa devrait etre bon
Tiller
Messages postés
781
Date d'inscription
mercredi 4 juillet 2007
Statut
Membre
Dernière intervention
14 septembre 2008
211
18 août 2008 à 15:20
18 août 2008 à 15:20
Je peux avoir la fonction deploie? merci =)
Tiller
Messages postés
781
Date d'inscription
mercredi 4 juillet 2007
Statut
Membre
Dernière intervention
14 septembre 2008
211
18 août 2008 à 15:32
18 août 2008 à 15:32
Tu pourrais pas utiliser la balide code pour conservé les tabulations? Sa donne pas envie de lire la..