Salut tout le monde,
J'utilise jquery et un petit plugin intitulé progressbar qui permet de réaliser de jolie barre de progression.
Dans la page de démo : http://t.wits.sg/misc/jQueryProgressBar/demo.php#
Une des barres changes de valeur grâce à des contrôles qui prennent la forme d'un lien comportant l'attribut onclick suivant :
<a href="#" onclick="$('#pb1').progressBar(20);">20</a>
En l'espèce, cela permet de régler la barre à 20. J'aimerai réaliser une telle action mais via une requête Ajax et comme je suis une quiche en javascript je n'y arrive pas.
Voici ma progressebar originale :
Code Javascript :
$(document).ready(function() {
$("#bdv").progressBar(<? echo $fetchx['pv'];?>,{max: <? echo $fetchx['pv_max'];?>, textFormat: 'fraction', barImage:
<?
if($fetchx['pv'] >= $fetchx['pv_max']*75/100){echo "'images/progressbg_green.gif'";}
elseif($fetchx['pv'] >= $fetchx['pv_max']*50/100 && $fetchx['pv'] < $fetchx['pv_max']*75/100){echo "'images/progressbg_yellow.gif'";}
elseif($fetchx['pv'] >= $fetchx['pv_max']*25/100 && $fetchx['pv'] < $fetchx['pv_max']*50/100){echo "'images/progressbg_orange.gif'";}
elseif($fetchx['pv'] >= $fetchx['pv_max']*0/100 && $fetchx['pv'] < $fetchx['pv_max']*25/100){echo "'images/progressbg_red.gif'";}
?>
});
});
Voici ma requête Ajax :
Code Javascript :
function pvUpdate(id,url){
var xhr_object = null;
var position = id;
if(window.XMLHttpRequest) xhr_object = new XMLHttpRequest();
else
if (window.ActiveXObject) xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
// On ouvre la requete vers la page désirée
xhr_object.open("GET", url, true);
xhr_object.onreadystatechange = function(){
if ( xhr_object.readyState == 4 )
{
// j'affiche dans la DIV spécifiées le contenu retourné par le fichier
document.getElementById(position).innerHTML = xhr_object.responseText;
var mesScripts = document.getElementById("bdv").getElementsByTagName("script");
for (var i=0; i<mesScripts.length; i++) {
eval(mesScripts[i].innerHTML);
}
}
}
// dans le cas du get
xhr_object.send(null);
}
Et l'url interrogée est disons bdv.php.
Plusieurs questions : quel élément dois-je modifier dans ma page contenant la progressbar ? (Dois je faire une div indépendante, dois-je assigner la progressbar à une div et générer carrément un nouveau code ?)
Ne pourrais-je pas générer via ma page php quelque chose se rapprochant du onclick suscité ?
Merci pour votre lecture.
Bonne journée à tous =)