Noms de champs paramétrés dans un formulaire

Noms de champs paramétrés dans un formulaire - HTML/CSS - Programmation

Marsh Posté le 09-03-2006 à 13:27:54    

Sous IE6, ceci fonctionne :
 
      function lecture(numQuestion) {
        leTitre = "titre_"+numQuestion;
        document.getElementById(leTitre).value  = titreEnCours;  
      }
 
Sous FireFox 1.5 ou sous Netscape 7.1, ça ne fonctionne pas.
 
Ce qui fonctionnerait, je pense, ce serait :
 
      function lecture() {
        leTitre = "titre_1";
        document.getElementById(leTitre).value  = titreEnCours;  
        leTitre = "titre_25";
        document.getElementById(leTitre).value  = titreEnCours;  
        leTitre = "titre_42";
        document.getElementById(leTitre).value  = titreEnCours;  
        leTitre = "titre_143";
        document.getElementById(leTitre).value  = titreEnCours;  
        leTitre = "titre_213";
        document.getElementById(leTitre).value  = titreEnCours;  
     }
 
Sauf que je ne connais jamais les valeurs de numQuestion à l'avance.
Donc je cherche l'astuce pour pouvoir malgré tout paramétrer le nom du champ leTitre (type=text).

Reply

Marsh Posté le 09-03-2006 à 13:27:54   

Reply

Marsh Posté le 09-03-2006 à 13:50:22    

Citation :

Sous FireFox 1.5 ou sous Netscape 7.1, ça ne fonctionne pas


Comment sont définis les champs du formulaire ?
Il faut savoir que sous IE, les champs sont identifiés par l'attribut "name", et l'attribut "id", alors que sous Firefox et Netscape, ils sont identifiés par "id", et donc le piège classique consiste à écrire <input type="text" name="toto"> qui ne marche bien que sous IE, au lieu de <input type="text" id="toto"> qui marche avec tous les navigateurs.
Mais le problème est peut-être ailleurs. Il faudrait avoir un vue plus large du code source.

Reply

Marsh Posté le 09-03-2006 à 14:04:25    

Astuce trouvée :  
 
<img src="images/bouton.gif" border="0" onClick="javascript:lecture(''Titre_<?php echo $numeroBouton;?>');">
 
C'est dans l'appel de la fonction que je règle le problème, en php

Reply

Marsh Posté le 09-03-2006 à 14:05:31    

olivthill a écrit :

Citation :

Sous FireFox 1.5 ou sous Netscape 7.1, ça ne fonctionne pas


Comment sont définis les champs du formulaire ?
Il faut savoir que sous IE, les champs sont identifiés par l'attribut "name", et l'attribut "id", alors que sous Firefox et Netscape, ils sont identifiés par "id", et donc le piège classique consiste à écrire <input type="text" name="toto"> qui ne marche bien que sous IE, au lieu de <input type="text" id="toto"> qui marche avec tous les navigateurs.
Mais le problème est peut-être ailleurs. Il faudrait avoir un vue plus large du code source.


 
J'utilise id et name pour éviter ce problème.

Reply

Marsh Posté le 09-03-2006 à 15:17:26    

Problème partiellement résolu, sauf pour un plugin audio :
 
Le code source standard :
 
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" width="200" height="20" id="dewplayer" align="middle"><param name="allowScriptAccess" value="sameDomain" /><param name="movie" value="dewplayer.swf?son=test.mp3&amp;autostart=1&amp;bgcolor=FFFFFF" /><param name="quality" value="high" /><param name="bgcolor" value="FFFFFF" /><embed src="dewplayer.swf?son=test.mp3&amp;autostart=1&amp;bgcolor=FFFFFF" quality="high" bgcolor="FFFFFF" width="200" height="20" name="dewplayer" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer"></embed></object>
 
Sous FireFox, c'est la zone <embed> qui fonctionne. Il n'y a pas d'ID, juste NAME (mettre ID à la place n'a pas l'air de gêner).
 
Dans la fonction Javascript, j'ai :
 
document.getElementById(lecteurFFox).src = "dewplayer.swf?son="+titreMP3+"&autostart=1&bgcolor=FFFFFF";  
 
... et ça ne marche pas (& ou &amp; ne change rien).
LecteurFFox peut être = "Lect_1", "Lect_36", "Lect_54" etc.
 

Reply

Sujets relatifs:

Leave a Replay

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