[Javascript] document.form.objet.value pb IE

Résolu/Fermé
b@sh
Messages postés
24
Date d'inscription
vendredi 31 juillet 2009
Statut
Membre
Dernière intervention
14 mars 2010
- 31 juil. 2009 à 12:57
b@sh
Messages postés
24
Date d'inscription
vendredi 31 juillet 2009
Statut
Membre
Dernière intervention
14 mars 2010
- 31 juil. 2009 à 16:24
Salut à tous !

Je tiens à signaler que je débute en javascript.

Donc voilà mon soucis :
j'ai créé une fonction en js qui est parfaitement fonctionnelle sur Firefox mais pas sur IE 7. Vous trouverez ci-dessous la partie de code qui pose probleme :

function fctajax(typeprod,budget)
{
var montypeprod = document.accessoires.typeprod.value.split('(');
var montypeprod = montypeprod[0];
alert(montypeprod);
.......
}
}

en fait IE ne comprend pas "document.accessoires.typeprod.value" et ne me retourne rien dans le alert de la ligne 3 tandis que Firefox le comprend et execute la fonction sans erreur.
Je tiens par ailleurs a préciser que le comportement est le meme avec un alert(document.accessoires.typeprod.value); placé en premiere ligne dans la fonction

Si vous avez des idées n'hésitez pas ! ;)

15 réponses

resalut
Messages postés
784
Date d'inscription
vendredi 26 juin 2009
Statut
Membre
Dernière intervention
21 janvier 2010
55
31 juil. 2009 à 14:49
pk ta mis return false ?
1
b@sh
Messages postés
24
Date d'inscription
vendredi 31 juillet 2009
Statut
Membre
Dernière intervention
14 mars 2010
2
31 juil. 2009 à 16:24
Probleme Résolu !!
Je tiens a te remercier pour ton aide resalut.

En fait pour IE il faut écrire le code de la maniere suivante :

function fctajaxx(typeprod,budget)
{
var montypeprod = document.getElementById(typeprod);
alert(montypeprod.options[montypeprod.selectedIndex].text);
}

Ceci est spécifique bien entendu à la balise select.
1
resalut
Messages postés
784
Date d'inscription
vendredi 26 juin 2009
Statut
Membre
Dernière intervention
21 janvier 2010
55
31 juil. 2009 à 14:33
change le par document.getElementById("idduchamp").value;

et rajoute id="idduchamp" dans le input que tu veux
0
b@sh
Messages postés
24
Date d'inscription
vendredi 31 juillet 2009
Statut
Membre
Dernière intervention
14 mars 2010
2
31 juil. 2009 à 14:40
Merci pour ta réponse mais malheureusement ca n'y change rien, c'est toujours fonctionnel sur Firefox mais pas sur IE :o
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
resalut
Messages postés
784
Date d'inscription
vendredi 26 juin 2009
Statut
Membre
Dernière intervention
21 janvier 2010
55
31 juil. 2009 à 14:41
ta une erreur kkpart alors (jutilise cette fonction tous les jours sur ie)
0
resalut
Messages postés
784
Date d'inscription
vendredi 26 juin 2009
Statut
Membre
Dernière intervention
21 janvier 2010
55
31 juil. 2009 à 14:43
essai
var a = document.getElementById("idduchamp").value;
var b = a.split('(');
var montypeprod = b[0];
alert(montypeprod);
0
b@sh
Messages postés
24
Date d'inscription
vendredi 31 juillet 2009
Statut
Membre
Dernière intervention
14 mars 2010
2
31 juil. 2009 à 14:48
Je m'en doute bien en effet :p
Le probleme est que je ne pense pas avoir fait d'erreur dans mon code HTML définit comme suit :

<form name="accessoires">
<select name="typeprod" id="typeprod">
<?php mon code php ?>
</select>
<input type="text" id="budget" name="budget" size="5" />
</form>
<input type="submit" value="OK" onclick="javascript:fctajax('typeprod','budget'); return false;" />

d'autant que firefox interprete bien ma fonction :o
0
b@sh
Messages postés
24
Date d'inscription
vendredi 31 juillet 2009
Statut
Membre
Dernière intervention
14 mars 2010
2
31 juil. 2009 à 14:52
J'ai essayé
var a = document.getElementById("idduchamp").value;
var b = a.split('(');
var montypeprod = b[0];
alert(montypeprod);

mais ca n'y change rien car IE ne comprend pas document.getElementById("idduchamp").value à ma grande surprise :o
en revanche il comprend tres bien document.accessoires.budget.value pour mon champ <input>
0
b@sh
Messages postés
24
Date d'inscription
vendredi 31 juillet 2009
Statut
Membre
Dernière intervention
14 mars 2010
2
31 juil. 2009 à 14:55
>> Pk ta mis return false ?

Car ma fonction execute de l'AJAX. Par contre l'erreur ne vient pas de là.
Pour + de précision ca sert a indiquer au moteur javascript d'arreter de bosser une fois la fonction executée.
0
resalut
Messages postés
784
Date d'inscription
vendredi 26 juin 2009
Statut
Membre
Dernière intervention
21 janvier 2010
55
31 juil. 2009 à 14:58
et pour ce que tu a fait j'aurai fait :

function fctajax(ids,budget)
{
var a = document.getElementById(ids).value;
var b = a.split('(');
var montypeprod = b[0];
alert(montypeprod);
.......
}
0
resalut
Messages postés
784
Date d'inscription
vendredi 26 juin 2009
Statut
Membre
Dernière intervention
21 janvier 2010
55
31 juil. 2009 à 15:00
et ajax ou pas jvois pas pk utiliser return false
0
b@sh
Messages postés
24
Date d'inscription
vendredi 31 juillet 2009
Statut
Membre
Dernière intervention
14 mars 2010
2
31 juil. 2009 à 15:42
function fctajaxx(typeprod,budget)
{
alert(document.getElementById(typeprod).value);
}

alert ne retourne rien sur IE en revanche :

function fctajaxx(typeprod,budget)
{
alert(document.getElementById(budget).value);
}

alert retourne la bonne valeur oO
0
resalut
Messages postés
784
Date d'inscription
vendredi 26 juin 2009
Statut
Membre
Dernière intervention
21 janvier 2010
55
31 juil. 2009 à 15:48
probleme d'id ds le html alors
0
b@sh
Messages postés
24
Date d'inscription
vendredi 31 juillet 2009
Statut
Membre
Dernière intervention
14 mars 2010
2
31 juil. 2009 à 15:52
c'est bien ca qui me rend fou car l'id définit en HTML est le bon comme tu peux en juger :

<select name="typeprod" id="typeprod">

<input type="submit" value="OK" onclick="javascript:fctajaxx('typeprod','budget');" />

par ailleurs FF y arrive mais pas IE.
0
resalut
Messages postés
784
Date d'inscription
vendredi 26 juin 2009
Statut
Membre
Dernière intervention
21 janvier 2010
55
31 juil. 2009 à 15:54
met le javascript en dessous du code html
0