ASP.NET无法从代码隐藏中为datepicker设置值

时间:2015-02-25 19:57:35

标签: c# jquery asp.net datepicker setvalue

我有一个datepicker字段

$(function () {
        $("#dateTextBox").datepicker({
            changeMonth: true,
            changeYear: true
        });

        $("#dateTextBox").datepicker("option", "dateFormat", "dd/mm/yy");
});

在后面的代码中,点击按钮,我正在尝试将值设置为datepicker字段:

dateTextBox.Value = date.ToString("dd/MM/yyyy");

但是在回发后,文本框是空的......

2 个答案:

答案 0 :(得分:2)

为了实现这一目标,您需要使用隐藏字段从客户端读取详细信息。可以在服务器端设置此隐藏字段值。

例如:

在页面上创建隐藏字段

<asp:HiddenField id="hdnDate" runat="server" />

在hiddenField中设置日期字符串:

protected void button_Clicked (...)
{
     DateTime dt = DateTime.Now;
     hdnDate.Value = dt.Year.ToString() + "," + (dt.Month - 1 ).ToString() + "," + dt.Day.ToString();
}

现在,在jquery事件的document.ready上,执行此操作

$(document).ready(function() {
 $("#dateTextBox").datepicker({
        changeMonth: true,
        changeYear: true
    });

  dtString = $("#<%=hdnDate.ClientID%>").val();
  dtString = dtString.split(',');
  var defaultDate = new Date(dtString[0], dtString[1], dtString[2]);
  $("#dateTextBox").datepicker("setDate",defaultDate);

});

答案 1 :(得分:0)

尝试一下:

/usr/bin/foo