ASP.NET中的JQuery日期选择器

时间:2013-09-30 06:11:08

标签: jquery asp.net vb.net

我的页面中有一个按钮。当我单击它时,它应该打开一个JQuery窗口。

在窗口内,我有一个datepicker控件,默认情况下应显示当前日期。我的代码是这样的。

客户端

<script type="text/javascript">
  $(function () {
      $("#<%= txtDate.ClientID %>").datepicker({
          changeMonth: true,
          changeYear: true,
          dateFormat: "dd-mm-yy",
          yearRange: '1901:2050',
          maxDate: new Date(),
          showOn: "button",
          buttonImage: "images/calendar.png",
          buttonImageOnly: true,
          showButtonPanel: true,
          showMonthAfterYear: true,
          inline: true,
          altField: "#<%= HiddenDate.ClientID %>",
          altFormat: "dd-mm-yy",
          onSelect: function (dateText, inst) {
              shouldsubmit = true;
          },
          onClose: function (dateText, inst) {
              shouldsubmit = false;
              javascript: __doPostBack('<%= txtDate.ClientID %>', '');
          }
      });

Sys.WebForms.PageRequestManager.getInstance().add_pageLoaded(function (evt, args) {
        $("#<%= txtDate.ClientID %>").datepicker({
            changeMonth: true,
            changeYear: true,
            dateFormat: "dd-mm-yy",
            yearRange: '1901:2050',
            maxDate: new Date(),
            showOn: "button",
            buttonImage: "images/calendar.png",
            buttonImageOnly: true,
            showButtonPanel: true,
            showMonthAfterYear: true,
            inline: true,
            altField: "#<%= HiddenDate.ClientID %>",
            altFormat: "dd-mm-yy",
            onSelect: function (dateText, inst) {
                shouldsubmit = true;
            },
            onClose: function (dateText, inst) {
                shouldsubmit = false;
                javascript: __doPostBack('<%= txtDate.ClientID %>', '');
            }
        });
    });

服务器端

If Not Page.IsPostBack Then
        TxtDate.Text = DateTime.Today.ToString("dd-MM-yyyy")
        TxtDate.Text = Session("CurrentDate")
End If

但文本框仍然是空白的。关于我错在哪里的任何线索?

1 个答案:

答案 0 :(得分:0)

我已经解决了这个问题。

问题是我在单击代码中的“添加”按钮时重置了日期。因此它没有显示日期。因此,我在页面加载块中删除了以下代码,并在重置日期后将其添加到“添加”按钮单击事件。

Protected Sub btnNewBatch_Click(sender As Object, e As ImageClickEventArgs) Handles btnNewBatch.Click
    TxtDate.Text = DateTime.Today.ToString("dd-MM-yyyy")
    TxtDate.Text = Session("CurrentDate")
    HiddenDate.Value = TxtDate.Text
End Sub

感谢@Samit和@Yuriy的时间和建议!