Reéxecuter des scripts JS - Probleme avec eval()

Reéxecuter des scripts JS - Probleme avec eval() - HTML/CSS - Programmation

Marsh Posté le 05-03-2009 à 22:15:16    

Bonjour,
je rencontre des problèmes avec l'utilisation de la fonction eval dans ma page.
Je m'explique j'ai un arbre javascript qui représente ma base de données, il s'affiche dans un div correctement mais lorsque j'effectue des actions sur ma BD j'aimerais que l'arbre soit modifié en "direct" du coup pour commencer je test avec un bouton rafraîchir qui a pour but de rafraîchir uniquement mon div.
 
J'ai tout d'abord essayé avec de l'AJAX mais comme vous savez le code javascript n'est pas réinterpreté lors de cette procédure, j'ai donc pensé à la fonction eval() à laquelle je passe uniquement le code js à exécuter.
 
J'ai réussi à reévaluer la fonction js en question mais le navigateur recharger pour cela la page en ne faisant que ce JS et en délaissant tout le reste de la page.
 
J'ai ensuite pensé à faire un eval directement sur mon script sans passer par AJAX en faisant comme ça :
 
function reload()  
{
var c = document.getElementById('containerTree');
var tmp = c.getElementsByTagName('script');
(eval(tmp[1].text);
}

 
En considérant que le contenu de la variable tmp est : createTree(tabJs,1,1);
 
J'obtiens du coup exactement le même résultat, c'est à dire mon arbre mais dans une page vierge de tout autre élément.
 
Quelqu'un aurait il une solution ou une piste car je bataille sur ce point depuis plusieurs semaines et il me reste plus que ça pour que mon projet de fin d'études soit terminé.
MERCI
 :bounce:  :bounce:


Message édité par allian le 05-03-2009 à 22:35:47
Reply

Marsh Posté le 05-03-2009 à 22:15:16   

Reply

Marsh Posté le 06-03-2009 à 10:21:27    

bonjour,
un lien vers ta page, et/ou le code javascript car c'est pas tres clair.
 
sinon, tu mes le javascript que tu es sencé exécuté une deuxieme fois dans une fonction...
 
<script type="text/javascrip">
function drawTree() {
  ...
}
drawTree(); //execute une premiere fois
</script>
 
plus tard quand tu as besoin de redessiner ton arbre => drawTree();


---------------
http://poemes.iceteapeche.com - http://www.simuland.net
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed