2009-03-11 6 views
1

Mon calendrier JavaScript fonctionne dans IE mais il ne fonctionne pas dans Mozilla.Le calendrier Javascript ne fonctionne pas

Mon code:

<table> 
    <tr style="height: 5px;"> 
    <td> 
    <asp:TextBox ID="txtBorderedDate" runat="server" CssClass="TextBoxMandatory" Enabled="false"></asp:TextBox> 
    </td> 
    <td class="FieldButton_bg" style="height: 5px;"> 
    <a onclick="javascript:showCalendarControl(ctl00_SaralConetentPlaceHolder_txtBorderedDate);" href="#"> 
     <img src="../Images/iconCalendar.png" style="width: 20px; height: 20px; vertical-align: bottom;" border="0" /> 
    </a> 
    </td> 
    </tr> 
    </table> 
+0

Avez-vous des erreurs dans IE? –

+0

Non ... Je ne reçois aucune erreur –

+0

Vous ne devriez pas utiliser le pseudo-protocole JavaScript! – James

Répondre

1

Je ne sais pas si cela n'a rien à voir avec le problème (vous devez poster un peu plus de votre code), mais vous ne devriez pas coder en dur l'ID du contrôles dans ASP.NET. En outre, je pense que certaines citations peuvent manquer dans l'appel showCalendarControl().

Remplacer ceci:

<a onclick= 
"javascript:showCalendarControl(ctl00_SaralConetentPlaceHolder_txtBorderedDate);" ... 

Avec ceci:

<a onclick="showCalendarControl('<%= txtBorderedDate.ClientID %>');" ... 

Certains des contrôles parents de txtBorderedDate pourraient obtenir rendus différemment dans différentes frontières, entraînant ainsi un autre ID côté client du contrôle de zone de texte.

+0

+1 mais je doute que ce soit une raison ... Les calendriers basés sur JS sont des structures dynamiques complexes qui ont beaucoup d'éléments créés dynamiquement. Dans ce cas, il semble passer l'ID de la zone de texte qui recevra la valeur sélectionnée du calendrier. – Cerebrus

+0

C'est difficile à dire, avec seulement cet extrait de code court. – M4N