日期选取器不适用于更新面板

本文关键字:更新 适用于 不适用 选取 日期 | 更新日期: 2023-09-27 17:56:13

我的应用程序在 asp.net 3.5 中,我从更新面板中的日期选择器中选择日期。 选择日期并单击"提交"按钮页面后,将回发。 回发后,当我尝试再次选择日期时,我在那里看不到日期选择器。

aspx 页上的代码

 <%@ Page Title="" Language="C#" MasterPageFile="~/Sample/MasterPage.master" AutoEventWireup="true" CodeFile="UpdateProblem.aspx.cs" Inherits="Sample_UpdateProblem" %>
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
<script type="text/javascript" src="jscolor/jscolor.js"></script>  // Script for date 
<asp:ScriptManager ID="ScriptManager1" runat="server" >
</asp:ScriptManager>
<div>
<asp:UpdatePanel ID="panel1" runat="server">
    <ContentTemplate>
        <asp:TextBox runat="server" ID="textbox" CssClass="color" />
        <asp:Button ID="Button1" runat="server" Text="Button" />
    </ContentTemplate>
</asp:UpdatePanel>
</div>
</asp:Content>

提前致谢

日期选取器不适用于更新面板

在 UpdatePanel 中添加 css 类

<asp:UpdatePanel ID="UpdatePanel1" runat="server">
        <ContentTemplate>
           <asp:TextBox ID="TextBox1" runat="server" CssClass="classTarget"></asp:TextBox>
           ..... 
        </ContentTemplate>
</asp:UpdatePanel>

在脚本中添加此代码

   <script type="text/javascript" src="http://jqueryjs.googlecode.com/files/jquery-1.3.1.js">
   </script>
   <script type="text/javascript">
        $(document).ready(function() {
            Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler);
            function EndRequestHandler(sender, args) {
                $('.classTarget).datepicker({ dateFormat: 'dd-mm-yy' });
            }
        });
    </script>   
$(function () {
   bindDatePickers(); // bind date picker on first page load
   Sys.WebForms.PageRequestManager.getInstance().add_endRequest(bindDatePickers); // bind date picker on every UpdatePanel refresh
});
function bindDatePickers() {
   $('#<%= txtInvoiceDateFrom.ClientID%>').datepicker({
      uiLibrary: 'bootstrap4'
   });
   $('#<%= txtInvoiceDateTo.ClientID%>').datepicker({
      uiLibrary: 'bootstrap4'
   });
 }