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

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Modifier le style dans une fonction (résolu)

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Modifier le style dans une fonction (résolu)

n°1119827
samyboy
Posté le 14-06-2005 à 17:35:02  profilanswer
 

Bonjour,
 
Je cherche à créer une fonction qui pourrait modifier les styles des liens.
Voici le code que j'ai écrit pour que vous compreniez le problème.
 
Je pense que je foire au niveau du passage de l'argument dans la fonction.
Il y a surement quelques notions de Javascript qui doivent me manquer.
Si vous arrivez à m'expliquer la faute que j'ai fait, ce serait très gentil.
merci.
 

Code :
  1. <html>
  2. <head>
  3. <style type="text/css">
  4. a{
  5.    color:black;
  6. }
  7. a.select{
  8.    font-weight:bold;
  9. }
  10. a.noselect{
  11.    font-weight:none;
  12. }
  13. </style>
  14. </head>
  15. <body>
  16. <script language="JavaScript">
  17. <!--//
  18. function change(num){
  19.    var inputID = 'input_'+num;
  20.    var linkID = 'link_'+num;
  21.    var coched = document.getElementById(inputID).checked;
  22.    if(coched==true){
  23.       document.getElementById(inputID).checked = false;
  24.       document.getElementById(linkID).className = "noselect";
  25.    }else{
  26.       document.getElementById(inputID).checked = true;
  27.       document.getElementById(linkID).className = "select";
  28.    }
  29. }
  30. defaultclass='noselect';
  31. for(i = 1; i <= 100 ; i++) // Début de la boucle
  32. {
  33.    document.write('<input name="input_'+i+'" type="checkbox" onclick="change('+i+');">');
  34.    document.write('<a href="#" id="link_'+i+'" onclick="change('+i+');" class="'+defaultclass+'">Numéro '+i+'</a><br>');
  35. }
  36. //-->
  37. </script>
  38. </body>
  39. </html>


Message édité par samyboy le 15-06-2005 à 10:59:19
mood
Publicité
Posté le 14-06-2005 à 17:35:02  profilanswer
 

n°1119841
j_lecruel
☀ ☁ ☂
Posté le 14-06-2005 à 17:46:46  profilanswer
 

Salut,
 
est-il normal que tu ne donne pas d'id à tes input ?

n°1119878
masklinn
í dag viðrar vel til loftárása
Posté le 14-06-2005 à 18:12:51  profilanswer
 

samyboy a écrit :

Bonjour,
 
Je cherche à créer une fonction qui pourrait modifier les styles des liens.
Voici le code que j'ai écrit pour que vous compreniez le problème.


Aussi étonnant que ça puisse paraître, getElementById récupère les éléments sur leur ID, pas sur leur name


Message édité par masklinn le 14-06-2005 à 18:14:05

---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°1120433
samyboy
Posté le 15-06-2005 à 10:38:05  profilanswer
 

Je vous remercie de vos remarques. J'ai quelques lacunes dans le domaine du javascript mais j'ai réussi à faire quelequechose qui marche. Je ne sais pas si j'ai écrit dans les règles de l'art mais ça fonctionne et c'est le plus important.
 

Code :
  1. <html>
  2. <head>
  3. <style type="text/css">
  4. a{
  5. color:black;
  6. }
  7. a.select{
  8. font-weight:bold;
  9. }
  10. a.noselect{
  11. font-weight:none;
  12. }
  13. </style>
  14. </head>
  15. <body>
  16. <script language="JavaScript">
  17. <!--//
  18. function change(num,objet){
  19. var inputID = 'input_'+num;
  20. var linkID = 'link_'+num;
  21. var coched = document.getElementById(inputID).checked;
  22. if( ( (objet.value == "on" )&&(coched==true)) || ((objet.value != "on" )&&(coched==false))  ){
  23.  setValue(num,true);
  24. }else{
  25.  setValue(num,false);
  26. }
  27. }
  28. function setValue(num,status){
  29. var inputID = 'input_'+num;
  30. var linkID = 'link_'+num;
  31.      if(status==true){
  32.  document.getElementById(inputID).checked = true;
  33.  document.getElementById(linkID).className = "select";
  34. }else{
  35.  document.getElementById(inputID).checked = false;
  36.  document.getElementById(linkID).className = "noselect";
  37. }
  38. }
  39. defaultclass='noselect';
  40. for(i = 1; i <= 100 ; i++) // Début de la boucle
  41. {
  42. document.write('<input name="input_'+1+'" id="input_'+i+'" type="checkbox" onclick="change('+i+',this);">');
  43. document.write('<a href="#" id="link_'+i+'" onclick="change('+i+',this);" class="'+defaultclass+'">Numéro '+i+'</a><br>');
  44. }
  45. //-->
  46. </script>
  47. </body>
  48. </html>


Message édité par samyboy le 15-06-2005 à 10:38:40
n°1120461
FlorentG
Unité de Masse
Posté le 15-06-2005 à 10:48:17  profilanswer
 

Si, y'a des lacunes au niveau JS... Surtout de part l'utilisation de document.write, qui date d'il y a 10 ans :D


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

  Modifier le style dans une fonction (résolu)

 

Sujets relatifs
[batch] modifier automatiquement l'extension de fichiers qcqimportation fichier DBF sous MYSQL[résolu]
pb avec fonction eregi_replacePetit soucis d'alignement du texte...
[JS] Plusieurs actions avec Onclick sans passer par une fonctioncalendrier et base de données !! complex ... [résolu]
[c++] Inclure des librairies C++ dans des fichiers C [self-resolu][Builder C++ 6] Utilisation dynamique d'une DLL [résolu...]
[C++]Existe t-il une fonction récupérant une partie d'un string?Passage d'arguments à une fonction Python
Plus de sujets relatifs à : Modifier le style dans une fonction (résolu)


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