Bonjour,
Dans un formulaire j'ai un champ de référence.
Une fois la référence saisie, je fais une recherche de celle-ci dans un fichier excel via un activeX pour récupérer les informations associées. si non trouvé, je laisse compléter l'utilisateur.
La recherche de la référence durant au minimum 3 secondes, j'aimerai mettre un message d'attente pendant la recherche...
Ma fonction s'exécute bien seulement le message ne s'affiche pas car l'affichage n'est pas raffraichit pendant l'exécution du script ! (tabulation ou clic)
Pour être plus clair, je mets un code adapté (la recherche étant simulée par une pause de 3 secondes). Si quelqu'un a une explication ou un bout de code à rajouter pour forcer le raffraichissement de l'écran. Merci.
script.js
Code Javascript :
function pause(milli)
{
var date = new Date();
var curDate = null;
do { curDate = new Date(); }
while(curDate-date < milli);
}
function rechercheRef() {
document.getElementById("div1").style.display = "none";
document.getElementById("div2").style.display = "block";
// simulation du traitement de recherche : pause 3 secondes
pause(3000);
document.getElementById("lib").value = "libelle produit";
document.getElementById("dim").value = "L x l x h";
document.getElementById("div2").style.display = "none";
document.getElementById("div1").style.display = "block";
}
test.html
Code HTML :
<html>
<head>
<script language="javascript" src="script.js">
</head>
<body>
<form>
<div id="div1">
<table>
<TR>
<TD>référence</TD>
<TD><input id="ref" type="text" onblur="rechercheRef();"></TD>
</TR>
<TR>
<TD>libellé</TD>
<TD><input id="lib" type="text"></TD>
</TR>
<TR>
<TD>dimensions</TD>
<TD><input id="dim" type="text"></TD>
</TR>
<TR>
<TD>quantité</TD>
<TD><input id="qtt" type="text"></TD>
</TR>
</table>
</div>
</form>
<div id="div2" style="display:none">
Merci de patienter... Je recherche votre référence !
</div>
</body>
</html>