Javascript JQuery日期选择器无效日期
当JQuery DatePicker中的日期被选中并用作SQL语句中的变量时,我遇到了一个问题。即使我使用datetime.Parse或Convert.datetime格式化datetime字符串,它也会出现一个错误,表示该字符串无效 JQuery日期选择器Javascript JQuery日期选择器无效日期,javascript,c#,jquery,asp.net,Javascript,C#,Jquery,Asp.net,当JQuery DatePicker中的日期被选中并用作SQL语句中的变量时,我遇到了一个问题。即使我使用datetime.Parse或Convert.datetime格式化datetime字符串,它也会出现一个错误,表示该字符串无效 JQuery日期选择器 <script> $( function() { $("#datepicker").datepicker({ altField: "#ContentPlaceHolder1_selectDa
<script>
$( function() {
$("#datepicker").datepicker({
altField: "#ContentPlaceHolder1_selectDate",
defaultDate: $('#ContentPlaceHolder1_defaultDate').val(),
dateFormat: "mm-dd-yy",
onSelect: function (date, obj) {
$('#ContentPlaceHolder1_defaultDate').val(date);
$('#ContentPlaceHolder1_selectDate').val(date)
$('#ContentPlaceHolder1_defaultDate').trigger('change');
$('#form1').submit();
},
});
});
</script>
<script>
$(document).ready(function () {
onLoad: $('#ContentPlaceHolder1_defaultDate').val($('#ContentPlaceHolder1_selectDate').val());
});
</script>
<div id="datepicker"></div>
<input type="text" id="defaultDate" runat="server"/>
<input type="text" id="selectDate" runat="server" />
<asp:Label ID="Label1" runat="server" />
但是,这会导致错误消息
if (!IsPostBack)
{
string defDate = selectDate.Value.Replace('-', '/');
DateTime DT = DateTime.Parse(defDate);
label1.Text = DT.ToShortDateString();
}
此代码有效
if (!IsPostBack)
{
string defDate = DateTime.Now.Date.ToShortDateString();
DateTime DT = DateTime.Parse(defDate);
label1.Text = DT.ToShortDateString();
}
else
{
string defDate = selectDate.Value.Replace('-', '/');
DateTime DT = DateTime.Parse(defDate);
label1.Text = DT.ToShortDateString();
}
有人能解释一下原因吗?DateTime.Parse只采用4种不同的格式
2018-09-14
09/14/2018
Sep 14 2018
14 Sep 2018
它将不接受mm-dd-yy
格式
尝试将-
替换为/
,如下所示
defDate.replace('-', '/');
mm
代表分钟,你的意思可能是mm
@Rafalon“mm”将显示月份编号“mm”显示月份名称而不是C:M
和mm
在一位或两位数字上显示月份编号,MMM
和MMMM
显示短月或长月name@Rafalon我把它改成了MM,但我还是得到了一个error@Rafalon不,它作为字符串传递。我也这么想。但当我仅仅使用selectDate.value时,我得到了一个错误,说“无法将参数值从字符串转换为DateTime”。我使用了您的建议,但仍然收到一条错误消息。我已经更新了代码。@DanNick可能是selectDate.Value有问题。似乎您的日期选择器被称为“DatePicker”,所以请尝试DatePicker.value,而不是不起作用的SelectedDate。我更新了代码。我让代码工作,但我不知道为什么?初始页面加载时,日期选择器是否未将默认日期设置为今天?
defDate.replace('-', '/');