我正在尝试将Ajax Calendar Extender控件的选定日期存储在隐藏字段中。我使用OnClientDateSelectionChanged来设置它。
但是,当我选择2015年2月22日时,脚本中的所选日期显示为02/21/2015。我添加了使用此选定值设置文本框的值,以进行测试,并显示为02/21/2015。
它还将隐藏字段的值设置为“Feb 21 19:00:00 EST 2015”,在尝试转换为datetime时会抛出错误。
<asp:TextBox runat="server" ID="tbStartDate" ReadOnly="true" />
<asp:Image runat="server" ID="imgFrom" ImageUrl="Calendar.gif" />
<ajaxToolkit:CalendarExtender runat="server"
ID="calStartDate"
Format="MM/dd/yyyy"
TargetControlID="tbStartDate"
OnClientDateSelectionChanged= "startDateChanged"
PopupButtonID="imgFrom" />
function startDateChanged(sender, args) {
var hfStartDate = document.getElementById('<%=hfStartDate.ClientID %>');
var selectedDate = sender._selectedDate;
hfStartDate.value = selectedDate;
sender._textbox.set_Value(sender._selectedDate.format(sender._format))
}