1

我在 aspx 页面上使用带有两个文本框的 datepicker 插件。当我点击提交时,数据会保存在数据库中,但现在如果我再次尝试更新日期,日期选择器在页面加载后不起作用。我为此使用以下代码。

<asp:TextBox ID="txtMovingDate" runat="server"
 CssClass="TextBox datepicker" TabIndex="19"></asp:TextBox>


jQuery(function() {
jQuery(".datepicker").datepicker(
{ dateFormat: 'mm/dd/yy', timeFormat: ' hh:ii:ss', 
changeMonth: true, changeYear: true });

请帮我。谢谢你。

4

2 回答 2

1

var prm = Sys.WebForms.PageRequestManager.getInstance();

prm.add_endRequest(函数(){

//您需要在此处复制您的 jquery datapicker 函数 //以便在回发后使用它

});

于 2012-07-17T14:04:04.193 回答
0

如果您在 Updatepanel 中有一个文本框,为了让事情更清楚,这里是我拥有的工作代码示例(在阅读了一些不同的答案后推断)。

在您的 <head> 标签中放置以下内容:

<script type="text/javascript">
    $(document).ready(function () {

        $(".startDatepicker").datepicker({
            dateFormat: 'dd/mm/yy',
            defaultDate: "+1w",
            changeMonth: true,
            numberOfMonths: 2,
            onClose: function (selectedDate) {
                $(".endDatepicker").datepicker  "option", "minDate", selectedDate);
            }
        });

    Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler);

        function EndRequestHandler(sender, args) {
            $(".startDatepicker").datepicker({
                dateFormat: 'dd/mm/yy',
                defaultDate: "+1w",
                changeMonth: true,
                numberOfMonths: 2,
                onClose: function (selectedDate) {
                    $(".endDatepicker").datepicker("option", "minDate", selectedDate);
                }
            });
        }
    });  
</script>

然后在你的 <body> 代码中输入:

<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">
    <ContentTemplate>
        <div class="floatLeft"><asp:TextBox ID="dateFromTxtBox" CssClass="startDatepicker"
        runat="server" Text="02/12/2013" ToolTip="enter a time either in 12 hour clock or 24 hour clock"
        Width="74px" DataFormatString="{0:d}" BorderStyle="Inset"></asp:TextBox>
    </div>
    </ContentTemplate>
</asp:UpdatePanel>

要添加结束日期或时间选择器,只需复制并粘贴每个 Jquery 语句的新实例(但不是 $(doc).ready(){}.. 或函数 EndRequestHandler(sender, args){},您在脚本中只需要其中一个)加上 < asp:textbox... 语句。

希望这可以帮助

于 2014-01-14T20:13:55.497 回答