2014-02-05 5 views
0

Я создаю веб-сайт с двумя тегами div и двумя переключателями. Div будет отображаться на основе выбранного переключателя. При загрузке страницы я передаю значение переключателя с главной страницы и соответственно показываю div. Он отлично работает с хромом и firefox, но показывает проблему в IE. Я использую IE 11. Я не пробовал с другими версиями IE. Мой код выглядит следующим образом:Javascript не загружается в IE

<asp:RadioButton ID="mail_stat" Text="Mailwise Statistics" runat="server" GroupName="stat_select" onclick="ch(1)" ClientIDMode="Static" /> 
    <asp:RadioButton ID="aggegrate_stat" Text="Aggegrate Statistics" runat="server" GroupName="stat_select" onclick="ch(2)" ClientIDMode="Static" /> 

    <div id="first"> 
    <table border="0"> 
     <tr> 
      <td> 
       &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
       <asp:Label ID="lbl_pro_id" runat="server" Text="Promotion Id"></asp:Label>&nbsp;</td> 
      <td> 
       &nbsp;&nbsp;&nbsp; 
       <asp:TextBox ID="txt_pro_id" runat="server" Width="101px"></asp:TextBox></td> 
     </tr> 
     <tr> 
      <td> 
       &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
       <asp:Label ID="lbl_sub" runat="server" Text="Subject"></asp:Label></td> 
      <td> 
       &nbsp;&nbsp;&nbsp; 
       <asp:TextBox ID="txt_sub" runat="server" Width="301px" Height="16px"></asp:TextBox></td> 
     </tr> 
    </table> 
</div> 

    <div id="second"> 
    <table border="0"> 
     <tr> 
      <td> 
       &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
       <asp:TextBox ID="txtStartDate" runat="server" required="true" placeholder="Start Date"></asp:TextBox></td> 
      <td> 
       <asp:TextBox ID="txtEndDate" runat="server" required="true" placeholder="End Date"></asp:TextBox></td> 
     </tr> 
    </table> 
</div> 

Мой ява скрипт выглядит следующим образом:

<%--Javascript for radiobuttion on load--%>    
<script type="text/javascript"> 
    onload = function() { 
     if (mail_stat.checked == true) 
     { 
      ch(1); 
     } 
     else if (aggegrate_stat.checked == true) 
     { 
      ch(2); 
     } 
    } 
</script> 

<%--Javascript for radiobuttion--%> 
<script type="text/javascript"> 
    $('#first').hide(); 
    $('#second').hide(); 
    $('stat2').hide(); 
    function ch(id) { 
     if (id == '1') { 
      $('#first').show(); 
      $('#second').hide(); 
      $('#stat2').hide(); 
     } 
     else if (id == '2') { 
      $('#first').hide(); 
      $('#second').show(); 
      $('#stat2').show(); 
     } 
    } 
</script> 

Пожалуйста, помогите.

+0

ли элемент быть неправдоподобным? try '$ (" # mail_stat "). is (": checked ")' – rps

+0

Посмотрите: [Что отличает ASP.NET AJAX pageLoad() и JavaScript window.onload?] (http://stackoverflow.com/ вопросы/602441/whats-the-different-between-asp-net-ajax-pageload-and-javascript-window-onloa) – Givi

ответ

1

onload не определен в правильном объеме. Попробуйте:

document.onload = function() { 
+0

То же самое работает с firefox и chrome. Думал, я попробовал ваше предложение, что он не работал в IE. – Ami

0

Я не хранил переключатель в переменной в javascript. Это должно быть как:

<script type="text/javascript"> 
    var mail=document.getElementById('mail_stat'); 
    var aggegrate=document.getElementById('aggegrate_stat'); 
onload = function() { 
    if (mail.checked == true) 
    { 
     ch(1); 
    } 
    else if (aggegrate.checked == true) 
    { 
     ch(2); 
    } 
} 

Смежные вопросы