[JS] problème IE/FF

Résolu/Fermé
Steefif Messages postés 485 Date d'inscription lundi 7 juillet 2008 Statut Membre Dernière intervention 15 février 2013 - Modifié par Steefif le 19/04/2011 à 14:52
Steefif Messages postés 485 Date d'inscription lundi 7 juillet 2008 Statut Membre Dernière intervention 15 février 2013 - 19 avril 2011 à 15:53
Bonjour,
j'ai un soucis avec la méthode suivant :
function fillform(id, clicker){ 
  if (clicker.getAttribute('name')=="login") 
  { 
   alert("clicker.getAttribute('value') = " + clicker.getAttribute('value')); 
   alert("clicker.value = " + clicker.value);   
   document.getElementById(id).logintosave.value=clicker.value; 
  } 
 } 


je vous explique la situation.
cette fonction est appelé après le changement du contenu d'un input de ma page jsp.
(j'ai testé l'appel avec onchange et onblur)

L'idée est de remplir document.getElementById(id).logintosave.value avec la valeur de l'endroit ou j'ai cliqué.

pour ce faire je test le nom de mon input (name, password, login) grâce à la méthode getAttribute('name').
Cette méthode fonctionne sous IE et FF sans problème.

Du coup je me dis, pourquoi pas faire de meme avec value?
OUi, car IE ne comprend pas element.option.
ici clicker.value est compris par ff pas ie

Donc j'utilise getAttribute('value')
et là, surprise :
IE me renvoi la valeur après changement de mon input
FF me renvoi la valeur avant changement de mon input

en gros mon input contient toto, j'y met titi
IE : clicker.getAttribute('value') = titi
IE : clicker.value = titi

FF : clicker.getAttribute('value') = toto
FF : clicker.value = titi


du coup non, avec value il faut utiliser clicker.value.

Là ou tout devienbt encore plus fun, c'est à la ligne :
document.getElementById(id).logintosave.value=clicker.value; 

En effet sous FF aucun probleme, je peut acceder par cette methode à la valeur de l'input de nom loginsave dans le formulaire d'id id

sous IE, pas moyen d'arriver à récupérer cette valeur, et encore moins de la modifier.
J'irai même plus loin, pas moyen d'arriver à récupérer l'input de name logintosave à l'intérieur du formulaire pour faire quoique ce soit avec.

Si quelqu'un peut me dépatouiller.... MERCI !


Steefif.




La vie c'est comme une boite de chocolat, on ne sait jamais sur quoi on va tomber.

1 réponse

Steefif Messages postés 485 Date d'inscription lundi 7 juillet 2008 Statut Membre Dernière intervention 15 février 2013 19
19 avril 2011 à 15:53
ok, j'ai trouvé un contournement en modifiant ma jsp et en utilisant uniquement getElementById
0