[JS] Combo sur des select et des navigateurs...

Combo sur des select et des navigateurs... [JS] - HTML/CSS - Programmation

Marsh Posté le 03-07-2003 à 17:23:57    

voilà, j'ai ce code javascript :  
 

Code :
  1. function combo() {
  2. var Rub = new Array("empty","MINI" );
  3. var MINI = new Array("MINI","COOPER" );
  4. // définition du formulaire
  5.  var objform = window.document.menu;
  6. // définition du numéro du choix
  7.  var s = objform.marque.selectedIndex;
  8. // reconnaissance du tableau
  9.  var tablo = eval (Rub[s]);
  10. // Reset du champ modele
  11.  objform.modele.length = 0;
  12. // Focus sur modele
  13.  objform.modele.focus();
  14. for (var i = 0; i<tablo.length; i++)
  15. {
  16.  var newoption = new Option(tablo[i], tablo[i]);
  17.  objform.modele.options[i+1] = newoption;
  18. }
  19. }


 
auquel je fait appel comme ceci : onchange="combo( false )"
 
aucun problème sous Iexplorer et Opera... par contre, lors du test sous netscape, les sous rubriques (ici, les modèles), ne fonctionnent pas, le deuxième select est vide... test alors sous Mozilla, et pareille... vous comprenez pkoi ?? :pt1cable:  
 
j'aurais besoin d'aide svp :sweat:  
merci et @+

Reply

Marsh Posté le 03-07-2003 à 17:23:57   

Reply

Marsh Posté le 03-07-2003 à 17:28:53    

peut-être un document.objform...  [:proy]  
 
sinon y a t il un message d'erreur JS dans la console de netscape?

Reply

Marsh Posté le 03-07-2003 à 17:29:42    

Ca ressemble à un problème de nommage raccourci que IE tolère mieux que Netscape non ?
var objform = window.document.menu;  
devient
var objform = window.document.forms["menu"];  
etc.

Reply

Marsh Posté le 03-07-2003 à 17:30:01    

Vi, Moz = grosse daube, pas capable de créer dynamiquement des objets en JavaScript (on rejoint l'éternel problème : pus c'est limité, et moins y'a de bug... c'est pour ça que Moz ne bug presque jamais)
 
Le seul moyen est de créer des options vides, et les remplir dynamiqiement avec tes valeurs plutôt que de les ajouter dynamiquement.

Reply

Marsh Posté le 03-07-2003 à 17:32:07    

magic, les trolls, c'est le vendredi.
 
xkamui, pourquoi tu n'utilises pas des fonctions comme getElementById()?

Reply

Marsh Posté le 03-07-2003 à 17:33:23    

gizmo a écrit :

magic, les trolls, c'est le vendredi.
 
xkamui, pourquoi tu n'utilises pas des fonctions comme getElementById()?


spa un troll, s'tune constatation.
 
Moz sait pas faire, IE et Opera savent le faire depuis les version 4 (y'a 6 ans je vous rappelle)


Message édité par MagicBuzz le 03-07-2003 à 17:33:46
Reply

Marsh Posté le 03-07-2003 à 17:36:05    

Et c'est de la faute de moz s'il utilise une syntaxe plus récente et standardisée qui marche partout?

Reply

Marsh Posté le 03-07-2003 à 17:54:06    

mise à jour du code :  
 

Code :
  1. function combo() {
  2. var Rub = new Array("empty","MINI" );
  3. var MINI = new Array("MINI","COOPER" );
  4. // définition du formulaire
  5.  var objform = window.document.forms["menu"];
  6. // définition du numéro du choix
  7.  var s = objform.elements['marque'].selectedIndex;
  8. // reconnaissance du tableau
  9.  var tablo = eval (Rub[s]);
  10. // Reset du champ modele
  11.  objform.elements['modele'].length = 0;
  12. // Focus sur modele
  13.  objform.elements['modele'].focus();
  14. for (var i = 0; i<tablo.length; i++)
  15. {
  16.  var newoption = new Option(tablo[i], tablo[i]);
  17.  objform.elements['modele'].options[i+1] = newoption;
  18. }
  19. }


 
mais rien de nouveau...
 
j'accepte que sous mozilla ça passe pas, mais sous NN, ça devrait quand même...


Message édité par xkamui le 03-07-2003 à 17:57:05
Reply

Marsh Posté le 03-07-2003 à 17:55:04    

mozilla et NS ont le même moteur...

Reply

Marsh Posté le 03-07-2003 à 17:55:57    

xkamui a écrit :


 
j'accepte que sous mozilla ça passe pas, mais sous NN, ça devrait quand même...


 
NN = Netscape 4 ? tu te soucies de ce truc préhistorique ?
NN = Netscape 6/7 ? sachant que c'est juste un relookage de Mozilla je vois pas ce que ça changerait


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 03-07-2003 à 17:55:57   

Reply

Marsh Posté le 03-07-2003 à 17:57:47    

NN 6/7
 
mais alors, pas moyen du tout sous ce browser alors...

Reply

Marsh Posté le 03-07-2003 à 17:58:40    

si, mais faut lire toutes les réponses...

Reply

Marsh Posté le 03-07-2003 à 18:07:31    

gizmo a écrit :

si, mais faut lire toutes les réponses...  


si c'est par rapport à ça, les réponses suivent...
 

MagicBuzz a écrit :

Vi, (...)
 
Le seul moyen est de créer des options vides, et les remplir dynamiqiement avec tes valeurs plutôt que de les ajouter dynamiquement.


 
donc, ça veux dire qu'il faut que je fasse une condition sur le navigateur...
 

gizmo a écrit :


xkamui, pourquoi tu n'utilises pas des fonctions comme getElementById()?


 
j'ai essayé, mais il me mettais des erreurs...

Reply

Marsh Posté le 03-07-2003 à 18:15:14    

MagicBuzz a écrit :


spa un troll, s'tune constatation.
 
Moz sait pas faire, IE et Opera savent le faire depuis les version 4 (y'a 6 ans je vous rappelle)

oui mais moz n'en est qu'a la version 1
 
 
[:neowen]


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 03-07-2003 à 18:33:25    

et quelles erreurs?

Reply

Marsh Posté le 03-07-2003 à 18:35:47    

Heu.... Mozilla peut tout à fait ajouter des <option> de manière dynamique... Faut arrêter le troll là...
 
xkamui, que dit la console JS de Mozilla (c'est le premier réflèxe à avoir dans ce cas là...)


---------------
Incongru : une FAQ abandonnée sur les Standards du Web - FAQ périmée de blabla@Prog
Reply

Marsh Posté le 07-07-2003 à 08:27:13    

gm_superstar a écrit :


xkamui, que dit la console JS de Mozilla (c'est le premier réflèxe à avoir dans ce cas là...)


 
rien du tout, elle reste blanche...

Reply

Marsh Posté le 07-07-2003 à 15:48:18    

:bounce:  [:yoyoz]  :bounce:

Reply

Marsh Posté le 08-07-2003 à 13:37:42    

MagicBuzz a écrit :

Vi, Moz = grosse daube, pas capable de créer dynamiquement des objets en JavaScript  


 
Ca alors... Mais à quoi servent donc createTextNode(), createElement(), closeNode(), replaceChild(), etc ?
 
C'est bizarre mon Mozilla a toujours fait semblant de gérer ça tout à fait correctement.

Reply

Marsh Posté le 08-07-2003 à 13:38:09    

closeNode()=>cloneNode()

Reply

Marsh Posté le 08-07-2003 à 14:00:18    

Hôtez moi un doute : l'objet 'document', c'est pas propre à IE??? :??:

Reply

Marsh Posté le 08-07-2003 à 15:30:13    

rufo a écrit :

Hôtez moi un doute : l'objet 'document', c'est pas propre à IE??? :??:


 
Non, de toutes facons IE c'est pas propre.

Reply

Marsh Posté le 08-07-2003 à 18:38:08    

xkamui a écrit :

rien du tout, elle reste blanche...


Ah :??: Y'a moyen de tester la page ?


---------------
Incongru : une FAQ abandonnée sur les Standards du Web - FAQ périmée de blabla@Prog
Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

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