2011-10-19 14 views
8
<script type="text/javascript"> 
     $(function() { 
      $('.datePicker').datetimepicker({ dateFormat: 'dd/mm/yy' }); 
     }); 
    </script> 
</asp:Content> 
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="Server"> 
    <asp:ScriptManager ID="ScriptManager1" runat="server"> 
    </asp:ScriptManager> 
    <asp:TextBox ID="TextBox1" class="datePicker" runat="server"></asp:TextBox> 
    <asp:UpdatePanel ID="holder" runat="server" UpdateMode="Always" ChildrenAsTriggers="true"> 
     <ContentTemplate> 
      <asp:DropDownList runat="server" ID="ddl_RespondBy" AutoPostBack="true" OnSelectedIndexChanged="ddl_SelectedIndexChanged"> 
       <asp:ListItem Selected="True">1 Hour</asp:ListItem> 
       <asp:ListItem>Other</asp:ListItem> 
      </asp:DropDownList> 
      <asp:TextBox ID="txt_RespondBy" class="datePicker" Visible="true" runat="server" /> 
     </ContentTemplate> 
     <Triggers> 
      <asp:AsyncPostBackTrigger ControlID="ddl_RespondBy" EventName="SelectedIndexChanged" /> 
     </Triggers> 
    </asp:UpdatePanel> 
</asp:Content> 

protected void ddl_SelectedIndexChanged(object sender, EventArgs e) 
    { 
     if (ddl_RespondBy.SelectedItem.Text == "Other") 
     { 
      txt_RespondBy.Visible = true; 
     } 
     else 
     { 

     } 
    } 

私は更新パネルで部分的にポストバックを行いますが、ドロップダウンから他を選択して試してみると、表示されないtxt_RespondByテキストボックス内のカレンダーを開きますが、更新パネル外のテキストボックスにはカレンダーが表示されます。なぜJavascriptが部分ポストバック後に内部の更新パネルを動作していない更新パネルのJavascriptが部分ポストバック後に機能しない

答えて

13

たび、ページのロード(非同期または同期)と呼ばれているpageLoad機能、であなたのDateTimePickerの初期化コードを配置します。

<script type="text/javascript"> 
    function pageLoad(sender, args) { 
     $('.datePicker').datetimepicker({ dateFormat: 'dd/mm/yy' }); 
    }  
</script> 
+0

はい、今すぐ動作します。ありがとう – Mark

関連する問題