Javascript qui deconne sous firefox [Résolu]

Signaler
Messages postés
39
Date d'inscription
jeudi 2 mars 2006
Statut
Membre
Dernière intervention
22 septembre 2007
-
Messages postés
39
Date d'inscription
jeudi 2 mars 2006
Statut
Membre
Dernière intervention
22 septembre 2007
-
Salut à tous,

Pour commencer avant qu'on m'insulte pke mon code n'est pas beau, je tiens à dire que j'ai appris le javascript tt seul ^^, voilà c'etait pour le disclamer :D

J'ai un petit soucis avec mon code javacsript, il est appellé lorsque je clique sur un lien afin d'ajouter des champs dynamiquement dans un formulaire... sous IE aucun problème, sous FF les champs s'affichent sans erreur apparente en revanche je n'arrive pas à recupéré les infos de ces champs dans la page où je traite mon formulaire ....

Voilà le code:

function addActivite()
{
   
 var nbactiviteext = parseInt(document.etape6.nbactiviteext.value);
 var currspan = nbactiviteext+1;
 var nextspan = currspan+1;
 //var form_d  = 'zer<\/span>';
 
 var namespan = 'blocFormations'+nextspan;



 var form_d = '<table width="100%" border="0" cellpadding="0" cellspacing="0" style="border-width:0px; border-style: none;">';
 form_d += '<tr><td>';
 form_d += '<textarea rows="4" cols="70" name="activiteext'+currspan+'" onFocus="clearField(this)">Champ à remplir librement, essayer d’être synthétique et d’ajouter un site Internet<\/textarea>
';
 form_d += '<\/td><\/tr>';
 //'<tr><td colspan="4">
</td></tr>'
 form_d += '<tr><td>
<\/td><\/tr><\/table>';
 
 form_d += '<\/span>';
    document.getElementById("blocActivites"+currspan).innerHTML = form_d;
 document.etape6.nbactiviteext.value = currspan;
}





Voyez voys dans tout celà une erreur grossière qui empeche FF de faire ce que je veus ? une faute de programation ou quelque chose dans le genre ?

Merci,
Trés cordialement
Sébastien

10 réponses

Messages postés
39
Date d'inscription
jeudi 2 mars 2006
Statut
Membre
Dernière intervention
22 septembre 2007

Ca y est! J'ai reussi à régler mon problème tout seul, je laisse la solution si un jour quelqu'un fait la meme connerie que moi ...

en realité, le code javascript fonctionnait ....
ca venait du html qui constituait le formulaire,

j'aais fait cela:
   <form>
      ----

         .....
      
   </form>

il fallait en realité sortir les balises form de là où je les ai placé, comme cela:
<form>
          ----

         .....
      
   

</form>

Comme quoi desfois, ca ce jou pas à grand chose ....

++ al ;)
Messages postés
39
Date d'inscription
jeudi 2 mars 2006
Statut
Membre
Dernière intervention
22 septembre 2007

arghhhhh c'est la deprime ce soir, ce script aussi passe pas sous firefox

function ChangeStatut(value) {
  if(value == 1) {
   document.boutique.boutique.disabled = true;
  }
  if(value == 2) {
   document.boutique.boutique.disabled = true;
   document.ville.ville.disabled = true;
  }
  if(value == 3) {
   document.departement.departement.disabled = true;
   document.ville.ville.disabled = true;
   document.boutique.boutique.disabled = true;
  }
 }

Aidez moi svp ou vous aurez bientot un mort sur la conscience :'(
Messages postés
1044
Date d'inscription
lundi 7 mars 2005
Statut
Membre
Dernière intervention
13 juillet 2010
7
document.etape6, c'est un div avec le id etape6 que tu allais chercher avec cela ? Si oui c'est à cause de cela, car il faut que tu utilises document.getElementById('etape6') pour aller chercher ton élément.

Aussi moi aussi j'ai appris non seulement le javascript, mais le php et un base en c par moi-même.
Messages postés
39
Date d'inscription
jeudi 2 mars 2006
Statut
Membre
Dernière intervention
22 septembre 2007

Re,

Non ce n'est pas le nom d'un div, etape6 est le nom du formulaire et nbactiviteext le nom d'un champ de ce formulaire.
En evanche le 2eme fonctionne finalement, c'etait juste un probleme de css ;)
Messages postés
939
Date d'inscription
vendredi 25 octobre 2002
Statut
Membre
Dernière intervention
27 janvier 2009
2
dans ce cas essaye de remplacer

document.etape6.nbactiviteext.value
par
document.forms[0].elements["nbactiviteext"].value

si bien sur tu n'as qu'un seul formulaire sur la page, sinon tu remplace le 0 par l'index de ton formulaire.

Hvb aka Batto
bato.ltd at gmail.com
Messages postés
39
Date d'inscription
jeudi 2 mars 2006
Statut
Membre
Dernière intervention
22 septembre 2007

Re, merci pour ta reponse hvb,

Mais le probleme ne viens pas de la je pense, j'essayerais quand meme ta solution mais je doute que ca resolve mon probleme.
quand je traite le formulaire, j'arrive à récuperer le nombre d'activité, donc la mise à jour du champ value via le javascript fonctionne.

C'est cette partie je pense qui pose problème:
 var form_d = '<table width="100%" border="0" cellpadding="0" cellspacing="0" style="border-width:0px; border-style: none;">';
 form_d += '<tr><td>';
 form_d += '<textarea rows="4" cols="70" name="activiteext'+currspan+'" onFocus="clearField(this)">Champ à remplir librement, essayer d'être synthétique et d'ajouter un site Internet<\/textarea>
';
 form_d += '<\/td><\/tr>';
 //'<tr><td colspan="4">
</td></tr>'
 form_d += '<tr><td>
<\/td><\/tr><\/table>';
 
 form_d += '<\/span>';
    document.getElementById("blocActivites"+currspan).innerHTML = form_d;

Car elle s'affiche bien dans le navigateur ( ce sont des champs de formulaire que je rajoute dans un span ), en revanche, quand je traite le formulaire ces champs rajoutés n'ont pas été pris en compte... sous firefox uniquement alors que sous IE ca marche trés bien
Messages postés
939
Date d'inscription
vendredi 25 octobre 2002
Statut
Membre
Dernière intervention
27 janvier 2009
2
et la console javascript de firefox ne specifie pas d'erreur ou d'avertissement?

Hvb aka Batto
bato.ltd at gmail.com
Messages postés
39
Date d'inscription
jeudi 2 mars 2006
Statut
Membre
Dernière intervention
22 septembre 2007

ben non, c'est pour ca que je comprend pas ...

regarde l'exmple plus haut se trouve a cette adresse:
http://www.identik.fr/inscription/etape1.php

l'exemple en haut c'est pour l'etape 6 mais c'est le meme problemes aux etapes 3,5,6 et 8
Je te prirais de ne pas valider l'etape 8, sinon ca envoi un mal a l'admin qui rique de croire à un nouvel inscrit ^^

quand tu passe de l'etape 3 à 4 par exemple, tu regarde le code source avec IE, on retrouve tous nos champs en hidden saisies à l'etape 3, en revanche pour la meme operation sous FF, les chmaps ne sont pas là ...
Messages postés
732
Date d'inscription
jeudi 2 janvier 2003
Statut
Membre
Dernière intervention
29 octobre 2007

Bonjour




Je viens de faire le test avec FF 2.0, les champs sont bien là

Cordialement
Roro webDev
Messages postés
39
Date d'inscription
jeudi 2 mars 2006
Statut
Membre
Dernière intervention
22 septembre 2007

salut,

oui oui les champs sont bien la!
le probleme c'est que dans le script ou je recupere les valeurs de ces champs (seulement ceux qui sont rajoutés) il ne les trouves pas sous FF., il sufit d'afficher le ode source de l'etape4 pour s'en rendre compte, alors qu'en affichant le code source de l'etape 4 avec IE on voit bien que les infos ont été récupérée