ASP.NET 无法从代码隐藏中为日期选择器设置值
ASP.NET Can't set value to datepicker from code behind
我有一个日期选择器字段
$(function () {
$("#dateTextBox").datepicker({
changeMonth: true,
changeYear: true
});
$("#dateTextBox").datepicker("option", "dateFormat", "dd/mm/yy");
});
在代码隐藏中,单击按钮时,我试图将值设置为日期选择器字段:
dateTextBox.Value = date.ToString("dd/MM/yyyy");
但是回发后,文本框是空的...
为此,您需要使用隐藏字段从客户端读取详细信息。这个隐藏字段值可以在服务器端设置。
例如:
在页面上创建隐藏字段
<asp:HiddenField id="hdnDate" runat="server" />
在隐藏字段中设置日期字符串:
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);
});
试试这个:
dateTextBox.Value = DateTime.Now.ToString("yyyy-MM-dd");
我有一个日期选择器字段
$(function () {
$("#dateTextBox").datepicker({
changeMonth: true,
changeYear: true
});
$("#dateTextBox").datepicker("option", "dateFormat", "dd/mm/yy");
});
在代码隐藏中,单击按钮时,我试图将值设置为日期选择器字段:
dateTextBox.Value = date.ToString("dd/MM/yyyy");
但是回发后,文本框是空的...
为此,您需要使用隐藏字段从客户端读取详细信息。这个隐藏字段值可以在服务器端设置。
例如:
在页面上创建隐藏字段
<asp:HiddenField id="hdnDate" runat="server" />
在隐藏字段中设置日期字符串:
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);
});
试试这个:
dateTextBox.Value = DateTime.Now.ToString("yyyy-MM-dd");