Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2869 connectés 

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Modifier liens avec à onchange [RESOLU]

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Modifier liens avec à onchange [RESOLU]

n°1366202
fredderf
Posté le 15-05-2006 à 10:22:28  profilanswer
 

bonjour,
j'aimerai recuperer la valeur d'une variable grace à l'instruction onchange: voila le code.
Le probleme c'est que $b reste undefined...  
Tout ca pour pouvoir changer un lien...
Il y a (outre les erreurs) surement plus simple et fonctionnel...
Merci!

Code :
  1. <head>
  2. <SCRIPT LANGUAGE="JavaScript">
  3. var $b;
  4. function savoir(){
  5. var indice_selectionne=document.deroul.go.selectedIndex;
  6. var chango=document.deroul.go.options[indice_selectionne].value;switch (chango){
  7. case "a1":$b=1;break;
  8. case "a2":$b=2;break;
  9. defaut:$b=11;break;
  10. }
  11. }
  12. function aff(){
  13. var a="<form name='deroul'><select name='go' onchange='savoir()'>";
  14. var b="<option value='a1'>choix1</option><option value='a2'>choix2</option></select></form><a href='exemple"+$b+".php'>exemple</a>";
  15. document.write(a);
  16. document.write(b);
  17. }
  18. </SCRIPT>
  19. </head>
  20. <body>
  21. <SCRIPT language="JavaScript">
  22. aff();
  23. </SCRIPT>
  24. </body>


Message édité par fredderf le 15-05-2006 à 19:20:08
mood
Publicité
Posté le 15-05-2006 à 10:22:28  profilanswer
 

n°1366213
fredderf
Posté le 15-05-2006 à 10:30:04  profilanswer
 

Bravo pour les balises "Gras"...

n°1366305
anapajari
s/travail/glanding on hfr/gs;
Posté le 15-05-2006 à 11:36:25  profilanswer
 

alors dans l'ordre:

  • nommer des variables $X en js, ça suxxe. ça marche mais c'est le meilleur moyen de confondre variables js et php ...
  • c'est tout nul ce que tu essayes de faire ;), normalement tu as pas besoin de js!!!

En gros tu fais ton formulaire tout en html et c'est en php que tu testes la valeur du select!

Code :
  1. <body>
  2.   ...
  3. <form name='deroul' action="exemple.php" method="post">
  4.    <select name='go'>
  5.      <option value='a1'>choix1</option>
  6.      <option value='a2'>choix2</option>
  7.    </select>
  8.    <input type="submit" value="exemple"/>
  9. </form>
  10. ...
  11. </body>


et dans ton php

Code :
  1. ...
  2. switch($_POST['go']){
  3.   case 'a1':
  4.     // tu affiches ta page exemple1.php ou tu fais un header avec location = exemple1.php
  5.    break;
  6.   case 'a2':
  7.     // tu affiches ta page exemple2.php ou tu fais un header avec location = exemple2.php
  8.    break;
  9.    default:
  10.     // tu affiches ta page exemple11.php ou tu fais un header avec location = exemple11.php
  11. }


 
edit: Ah et les balises "gras" dans du code ça veut rien dire ;)


Message édité par anapajari le 15-05-2006 à 11:36:57
n°1366766
fredderf
Posté le 15-05-2006 à 17:59:28  profilanswer
 

Merci, en fait j'y arrivais en php...
En fait, je cherche juste à changer l'adresse d'un lien:
j'ai ma page  et dedans j'ai un lien qui pointe vers exemple1.php, suivant le choix dans menu deroulant, il doit pointer ver exemple2.php.
Mais c'etait pour alleger le travail du serveur que je voulais le faire en js.
Je prends note des $...
Et je reste persuadé que c'est tout nul...
Merci

n°1366774
gatsu35
Blablaté par Harko
Posté le 15-05-2006 à 18:04:49  profilanswer
 

<select onchange="document.location.href=this.value">
<option value="page1.php">page1</option>
<option value="page2.php">page2</option>
</select>
 

n°1366792
anapajari
s/travail/glanding on hfr/gs;
Posté le 15-05-2006 à 18:12:31  profilanswer
 

Qui a piqué le compte de gatsu et lui fait poster des solutions en js quand c'est inutile :o

n°1366801
fredderf
Posté le 15-05-2006 à 18:22:20  profilanswer
 

Ce serait plutot un truc dans ce genre (mais ca ne marche pas):
<select onchange="document.blabla.href=this.value">
<option value="page1.php">page1</option>
<option value="page2.php">page2</option>
</select>  
<a name="blabla" href="page1.php"> Mon lien </a>
Mais je pense que je vais laisser les serveurs travailler et le coder en php...
Merci

n°1366810
gatsu35
Blablaté par Harko
Posté le 15-05-2006 à 18:28:18  profilanswer
 

<select onchange="document.getElementById("blabla" ).href=this.value">
<option value="page1.php">page1</option>
<option value="page2.php">page2</option>
</select>  
<a id="blabla" href="page1.php"> Mon lien </a>  
 
C'est moi qui moi même qui me suis piqué mon compte pour repondre à une question à la con.
J'ai appris qu'en travaillant, même si toi (moi en l'occurence dans mon cas) tu veux toujours faire propre, ya toujours un imbécile pour faire de la merde, et qu'il faut suivre la merde de l'imbécile :o

Message cité 1 fois
Message édité par gatsu35 le 15-05-2006 à 18:28:43
n°1366827
fredderf
Posté le 15-05-2006 à 18:40:04  profilanswer
 

J'ai pas trop compris la fin du message... et le code n'a pas l'air de marcher. En tout cas merci.
PS: Je debute en js comme vouv en vous doutez, mais "faire propre" est ce faire "en php"?

n°1366841
gatsu35
Blablaté par Harko
Posté le 15-05-2006 à 19:09:15  profilanswer
 

pourquoi le code ne fonctionne pas :o ? tu as fait mis un onclick sur le lien :  
<a href="" onclick="alert(this.href)">Mon lien</a>
 
normalement mon code est obligé de fonctionner

mood
Publicité
Posté le 15-05-2006 à 19:09:15  profilanswer
 

n°1366843
gatsu35
Blablaté par Harko
Posté le 15-05-2006 à 19:09:37  profilanswer
 

le reste du message est destiné à anapajari

n°1366845
gatsu35
Blablaté par Harko
Posté le 15-05-2006 à 19:10:40  profilanswer
 

colle le code que tu as mis dans ta page :o

n°1366846
fredderf
Posté le 15-05-2006 à 19:18:54  profilanswer
 

Voila un script qui marche: merci...

Code :
  1. <head>
  2. <script>
  3. function dede()
  4. {
  5. var indice_selectionne=document.deroul.go.selectedIndex;
  6. var chango=document.deroul.go.options[indice_selectionne].value;
  7. switch (chango){
  8. case "aj":$b="page1.php";break;
  9. case "sa":$b="page2.php";break;
  10. }
  11. document.getElementById("blabla" ).href=$b;
  12. a=document.getElementById("blabla" ).href;
  13. }
  14. </script>
  15. </head>
  16. <body>
  17. <form name="deroul">
  18. <select name ="go" onchange="dede()">
  19. <option value="aj">page1</option>
  20. <option value="sa">page2</option>
  21. </select></form> 
  22. <a id="blabla" href="page0.php"> Mon lien </a> 
  23. </body>
  24. </html>


n°1366854
gatsu35
Blablaté par Harko
Posté le 15-05-2006 à 19:31:17  profilanswer
 

tu mélanges PHP et javascript :o
 
et je crois pas que c'est ce que tu cherchais à faire dès le début :o
et le script que je t'ai filé il est beaucoup moins bloat :o
 
anapajari, sauve moi :o

n°1366970
fredderf
Posté le 15-05-2006 à 21:42:38  profilanswer
 

Je ne les melange pas(surement les styles): les liens .php auraient tres bien pu etre des .html.  
C'est ce que je voulais faire depuis le debut(pas mal d'heures).
Le script que tu m'as filé m'a bien aidé, d'ailleurs si je l'avais eu dés le départ ca m'aurait bien aidé.
En fait suivant le choix, il faut changer al totalité des liens de la page. Il ya surment plus court comme script , mais mon vocab en js est tres limité.
Encore merci

n°1366973
fredderf
Posté le 15-05-2006 à 21:53:15  profilanswer
 

PS: le code qui devrait fonctionner:
<html>
<body>
 
<select onchange="document.getElementById("blabla" ).href=this.value">
<option value="page1.php">page1</option>
<option value="page2.php">page2</option>
</select>  
<a id="blabla" href="page1.php"> Mon lien </a>  
</body>  
</html>
 
ce qui ne marche pas: que je choisisse 1 ou 2, il lance tjs page1.php...
 
C'e st vrai que ca devrait marcher, et c'est sur que c'est plus beau...

n°1367165
anapajari
s/travail/glanding on hfr/gs;
Posté le 16-05-2006 à 09:39:50  profilanswer
 

gatsu35 a écrit :

C'est moi qui moi même qui me suis piqué mon compte pour repondre à une question à la con.
J'ai appris qu'en travaillant, même si toi (moi en l'occurence dans mon cas) tu veux toujours faire propre, ya toujours un imbécile pour faire de la merde, et qu'il faut suivre la merde de l'imbécile :o


ça va mieux hein :o
 

gatsu35 a écrit :

et je crois pas que c'est ce que tu cherchais à faire dès le début :o
et le script que je t'ai filé il est beaucoup moins bloat :o
anapajari, sauve moi :o

Je crois que j'ai enfin compris ce qu'il cherchait a faire, je mets l'explication plus bas ;)
 

gatsu35 a écrit :

tu mélanges PHP et javascript :o


fredderf a écrit :

Je ne les melange pas(surement les styles)

Si si tu melanges ;)
 
Bref ton code marche pas et c'est normal!!! Si tu lances la console js sous FF tu as une belle erreur  

Citation :

Erreur  : syntax error
Fichier source : pouet.html Ligne : 1, Colonne : 23
Code source   : document.getElementById(


Et si tu regardes bien tu te rends compte que tu as des conflits de double-quotes(" ), mets des simples(') à l'intérieur de ton onChange et tout ira bien.
 

n°1367672
fredderf
Posté le 16-05-2006 à 15:40:53  profilanswer
 

Heureusement qu'il y en a qui savent interpréter.
Je peux editer "doublement resolu"!
Sauf que mon code maintenant à l'air vraiment pourri...
Merci!!!


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Modifier liens avec à onchange [RESOLU]

 

Sujets relatifs
Calendrier avec liens qui s'affichent sur une partie précise d'un site[resolu] Caractere d'echappement (il m'en manque un)
[Résolu]Lecture de fichier qui lit que le premier caractère[Résolu] Problème d'encodage de String.
[Résolu] Arrêter un Thread qui attend un paquet sur un DatagramSocket[Delphi] Modifier dans un fichier txt
[Résolu] Problème Programmation MFC[JSP/DB2] Problème avec une requête d'insertion - Résolu
[Résolu] [JAVA - RMI] Unsupported major.minor version 49.0[Perl] telnet connexion!! (resolu)
Plus de sujets relatifs à : Modifier liens avec à onchange [RESOLU]


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR