2009-08-17 6 views
1

J'ai la ligne de code suivante:JavaScript Q. Travaux de FF & Safari, pas IE7 ou IE8

<li> 
    <label for="q2-1" onclick="setActive(this.id, 'question2-1-input');" id="q2-1-label"><input disabled="disabled" type="checkbox" name="question2" id="question2-1-input" value="1" />Opinions</label> 
</li> 

qui appelle:

function setActive(questionID, questionIDinput) 
{ 
    alert('setActive'); 
} 

Le code ci-dessus fonctionne très bien dans FF & Safari, mais pas dans IE. Est-ce que quelque chose au-dessus n'est pas convivial?

Merci

+0

Pourriez-vous afficher plus de votre code? –

+0

Le problème doit être ailleurs. – Havenard

+0

le code était caché, l'a corrigé. –

Répondre

4

Ne pas utiliser « setActive ». Il est déjà pris (nom d'une fonction existante). Remplacez-le par autre chose (setActive1() fera l'affaire;)) et il commencera à fonctionner dans IE.

+0

C'était tout, merci. J'ai aussi remarqué que LABEL avait l'ENTRÉE enveloppée à l'intérieur qui est bâclée, mais ce n'était pas la cause. Bad: Bon: AnApprentice

1

Je crois que vous devriez mettre le onclick même sur le input au lieu du label.

+0

il est parfaitement bien d'avoir un onclick pour l'étiquette. http://www.w3schools.com/tags/tag_label.asp – DmitryK

0

Vous devriez avoir l'événement onclick sur la case à cocher, pas l'étiquette, l'événement onclick sera tiré parce que vous avez le for = « Q2-1 » sur l'étiquette

Questions connexes