我有一个文本框,我可以从中选择日期。根据选择,我必须得到相应的月份和年份,并将其保存为数据库中的整数。我该怎么做?
答案 0 :(得分:2)
如果您正在使用jquery,那么为dateformat添加选项,您将拥有所需的格式
$(function () {
$('.date-picker').datepicker({
changeMonth: true,
changeYear: true,
showButtonPanel: true,
dateFormat: 'MM yy',
onClose: function (dateText, inst) {
var month = $("#ui-datepicker-div .ui-datepicker-month :selected").val();
var year = $("#ui-datepicker-div .ui-datepicker-year :selected").val();
$(this).datepicker('setDate', new Date(year, month, 1));
}
});
});
这是fiddle同样的。
答案 1 :(得分:0)
为什么不使用DateTimePicker
* ?
但是,如果您坚持使用TextBox
,请使用DateTime.TryParse
来验证和解析日期。获得DateTime
后,您可以使用Month
和Year
属性。
DateTime dt;
if(DateTime.TryParse(txtDate.Text, out dt))
{
int month = dt.Month;
int year = dt.Year;
}
else
{
MessageBox.Show("Enter a valid date");
}
*编辑,因为您使用的是ASP.NET,您可以使用Calendar
控件而不是DateTimePicker
。如果您使用的是ASP.NET-Ajax,CalendarExtender
也是一个不错的选择。
从纪念中我看到你正在使用VB.NET ....
Dim dt As Date
If Date.TryParse(txtDate.Text, dt) Then
Dim month As Int32 = dt.Month
Dim year As Int32 = dt.Year
Else
MessageBox.Show("Enter a valid date")
End If
答案 2 :(得分:-2)
为了获得月份和年份,我使用了以下代码。
Dim nStartMonth = Month(txtStartDate.Text)
Dim nStartYear = Year(txtStartDate.Text)
感谢您的所有时间和帮助! :)