changer la source d'un javascript - HTML/CSS - Programmation
Marsh Posté le 16-03-2004 à 09:34:07
J'ai ça mais ça ne marche que sous IE :
HTML :
Code :
|
script 1 :
Code :
|
Script 2
Code :
|
Si quelqu'un a une solution crossbrower
Mais est-ce qu'il n'y a pas moyen de concevoir tes scripts de manière à éviter le rechargement ?
Marsh Posté le 16-03-2004 à 09:46:58
Salut et merci a toi,
Ton script est identique au mien...
Pour répondre à ta question, je ne peux pas changer la nature de mon script js/php, il affiche les news et je voudrais que si l'utilisateur change des parametres d'un formulaire (couleur de police, taille, etc) le script change d'aspect en temps réel . Tu vois, sinon il y a une solution tres simple, l'utilisateur valide le formulaire et on reaffiche le script avec les parametres choisis précdemment mais je trouve dommage qu'il faille recharger la page...
Marsh Posté le 16-03-2004 à 10:05:15
Voila mon code a moi :
Code :
|
Marsh Posté le 16-03-2004 à 10:36:08
le_zell a écrit : Salut et merci a toi, |
Si c'est juste pour changer l'aspect du formulaire, ça peut se faire en un seul script :
Code :
|
(Marche sous IE et Moz)
A adapter avec plusieurs éléments. Tu peux également utiliser des cookies pour qu'on se souviene du choix d'une page à une autre.
Marsh Posté le 16-03-2004 à 12:28:22
Pour forcer le rechargement du script à chaque chargement de la page, il suffit d'avoir une URL toujours différente (en rajoutant la date et l'heure par exemple. Ainsi
Code :
|
devient
Code :
|
Ton url étant différente à chaque chargement de la page, le JS sera automatiquement rechargé.
En revanche, il faut pouvoir insérer la date à ton URL, tu peux le faire grâce à ce genre de code:
Code :
|
Marsh Posté le 16-03-2004 à 16:47:05
euh non c pas pour changer l'aspect d'un element de formulaire ca je sais pas faire pas de problème ct pour changer la source d'un javascript avec des parametres selectionnés par l'utilisateyr via des menu déroulants d'un formulaire.
Marsh Posté le 16-03-2004 à 16:49:01
Merci pour ta réponse VinceG, mais tu mas mal compris...
Ce n'est pas pour forcer le rechargement du script a chaque rechargement de page ca c'est pour eviter la mise en cache et je sais faire t'inquiete pas...
moi je veux forcer le rechargement d'un script javascript si on lui a change sa source...son src...
ok ?
Marsh Posté le 16-03-2004 à 17:24:55
Je viens de relire ton premier post, et en effet j'avais mal compris. Par contre je ne pense pas que ce soit faisable directement. Parce que les scripts sont chargés juste après le chargement d'une page et non lors de leur appel.
Je vois bien une solution, mais je la trouve pas très propre. Ca fait un peu bidouille et je ne sais même pas si les IFrame sont dans le W3C, et si ca marche sous Mozilla. Le truc, c'est que tu pourrais recharger une IFrame invisible qui ferait appel à ton JS. Dès que l'utilisateur change de sélection, tu recharges l'Iframe avec les bons paramètres, ce qui force le rechargement du script associé.
En espérant que mon idée (bidouille) te mettra sur la voie...
A+.
Marsh Posté le 17-03-2004 à 10:33:00
Et bien VinceG c'est exactement l'option que j'ai développée et ca marche sous IE / Moz. Comme c'est un espace reservé à des admins je suppose qu'ils doivent avoir une version recente de navigateurs...
Marsh Posté le 16-03-2004 à 09:10:36
Bonjour a tous !
Petit souci pour un de mes scripts
Soit un script de type :
<script id="monscript" language="JavaScript" type="text/javascript" src="../js/monscript.php?p=1"></script>
L'utilisateur change des paramètres et alors je veux changer la source de ce script :
if (document.all) document.all("monscript" ).src="../js/monscript.php?p=2";
Tout cela marche presque parfaitement sauf que monscript.php s'affiche bien au chargement de la page et que lorsque je change la source il ne se passe rien...Il faudrait que je fasse un truc du genre reload sur le script (document.all("monscript" ).reload(): deja essayé mais marche pas).
Ma question : comment changer la source d'un javascript et qu'il se recharge sans que la page soit rechargée ?
Merci a tous !