Ajax - Reexecuter javascript
zecka
Messages postés
115
Date d'inscription
Statut
Membre
Dernière intervention
-
zecka Messages postés 115 Date d'inscription Statut Membre Dernière intervention -
zecka Messages postés 115 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
En gros j'ai une page avec un div #Ajaxcontent Quant je clique sur un lien l'url ne change pas mais le contenu du div est remplacer(avec wajaxisation.js).
J'utilise un slider en javascript(sans jquery). Le javascript est placé dans la page en dessous du slider entre les balise <script type="text/javascript"></script>Le problème c'est qu'il n'est pas réinterpréter.
Par exemple a un endroit du javascript j'ai cela:
nbi=<?php echo ($i); ?>
Sur la page1 qui contient 4 image il met sort nbi=4
mais sur la page2 qui contient 2 image il met ressort nbi=4 au lieu de nbi=2
Lorsque je change le contenu il devrai logiquement changer ce chiffre vu que la valeur de $i change en fonction des page (j'ai vérifier en l'affichant sur la page directement et la il n'est pas pareil. C'est donc uniquement dans le javascript que le changement ne se fait pas.
Quelqu'un saurai comment faire pour que le changement s'effectue aussi dans le javascript?
<html><body><div id="Header">Lien01 lien02</div><div id="Ajaxcontent">blablabalbalabla<script type="text/javascript">...</script></div><div id="Content"></div></body></html>
En gros j'ai une page avec un div #Ajaxcontent Quant je clique sur un lien l'url ne change pas mais le contenu du div est remplacer(avec wajaxisation.js).
J'utilise un slider en javascript(sans jquery). Le javascript est placé dans la page en dessous du slider entre les balise <script type="text/javascript"></script>Le problème c'est qu'il n'est pas réinterpréter.
Par exemple a un endroit du javascript j'ai cela:
nbi=<?php echo ($i); ?>
Sur la page1 qui contient 4 image il met sort nbi=4
mais sur la page2 qui contient 2 image il met ressort nbi=4 au lieu de nbi=2
Lorsque je change le contenu il devrai logiquement changer ce chiffre vu que la valeur de $i change en fonction des page (j'ai vérifier en l'affichant sur la page directement et la il n'est pas pareil. C'est donc uniquement dans le javascript que le changement ne se fait pas.
Quelqu'un saurai comment faire pour que le changement s'effectue aussi dans le javascript?
A voir également:
- Ajax - Reexecuter javascript
- Telecharger javascript - Télécharger - Langages
- A javascript error occurred in the main process - Forum Windows
- A javaScript error occurred in the main process - Forum Handicap / Accessibilté
- Erreur #125 javascript - Forum Mozilla Firefox
- Afficher un tableau javascript en html ✓ - Forum Javascript
4 réponses
Je ne suis pas sur d'avoir bien compris le fonctionnement de ton script.
Si la partie :
est chargée sur ta page principale, c'est normal que le javascript ne redéfini pas la variable "nbi". Car ton code javascript a été défini avec la première variable PHP "$i".
Si tu pouvais me montrer ton code javascript, surtout la partie où est défini ta variable "nbi", ca serait plus simple.
Si la partie :
nbi=<?php echo ($i);?>
est chargée sur ta page principale, c'est normal que le javascript ne redéfini pas la variable "nbi". Car ton code javascript a été défini avec la première variable PHP "$i".
Si tu pouvais me montrer ton code javascript, surtout la partie où est défini ta variable "nbi", ca serait plus simple.
Hello,
En effet, pour changer la valeur de nbi il faut que ton JS appelle du PHP qui fournit la nouvelle valeur. Ensuite avec la méthode eval() tu la convertis en chiffre, et tu l'insères en JS.
Si tu insères du code PHP avec du JS ça ne sera pas interprété car le PHP n'est pas interprété côté client, mais côté serveur, à l'inverse du JS.
En effet, pour changer la valeur de nbi il faut que ton JS appelle du PHP qui fournit la nouvelle valeur. Ensuite avec la méthode eval() tu la convertis en chiffre, et tu l'insères en JS.
Si tu insères du code PHP avec du JS ça ne sera pas interprété car le PHP n'est pas interprété côté client, mais côté serveur, à l'inverse du JS.
Okay je crois avoir compris le truc. J'éssaye ca se soir et je repasse dire ce qu'il en est. En tout cas Merci de vos réponses !
Je n'y parvient pas.
bon concrétement j'ai ce code qui me permet d'avopir un changement de page sans la rafraichir. Je pars d'une page avec uniquement du texte et j'arrive sur une autre page qui contient un slider jquery. qu'est ce que je dois rajouter pour que le slider fonctionne sur la deuxieme page ? (si jouvre la page indépendamment le slider fonctionne très bien)
bon concrétement j'ai ce code qui me permet d'avopir un changement de page sans la rafraichir. Je pars d'une page avec uniquement du texte et j'arrive sur une autre page qui contient un slider jquery. qu'est ce que je dois rajouter pour que le slider fonctionne sur la deuxieme page ? (si jouvre la page indépendamment le slider fonctionne très bien)
function ajax_page_advanced(ele,msg,url){ $(ele).slideUp("slow", function(){ $(ele).html(msg).show("slow", function(){ $(ele).load(url+" "+ele, null, function(){ var tampon = $(ele).html(); $(ele).html(msg).hide("slow",function(){ $(ele).html(tampon); $(ele).slideDown("slow"); }); }); }); }); } /* Fonction de chargement ajax simple */ function ajax_page(ele,msg,url){ $(ele).html(msg).load(url+" "+ele); } /* Fonction de chargement ajax simple, mais avec un delai pour la demo */ function ajax_page_delayed(ele,msg,url){ $(ele).html(msg); setTimeout(function(){ $(ele).load(url+" "+ele); }, 1500) } /* Une fois la page chargée */ $(document).ready(function(){ //Application du chargement ajax avec animation sur les liens ayant une classe "wajax" $("a.wajax").click(function(){ ajax_page_advanced('#main-content','<p style="text-align: center">Chargement ...</p>',this.href); return false; }); //Application du chargemetn ajax simple sur tous les liens se trouvant dans le conteneur "menu1" $("#menu1 a").click(function(){ ajax_page_delayed('#main-content','<p style="text-align: center">Chargement ...</p>',this.href); return false; }); });