0

我有一个文本框,我可以从中选择一个日期。根据选择,我必须获取相应的月份和年份并将其作为整数保存在数据库中。我该怎么做呢?

4

3 回答 3

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));
    }
});

});

这是相同的小提琴

于 2013-09-19T07:29:13.527 回答
0

为什么不使用* 来代替?DateTimePicker

但是,如果您坚持TextBox使用DateTime.TryParse, 来验证和解析日期。一旦你有了,DateTime你可以使用它的MonthYear属性。

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,aCalendarExtender也是一个不错的选择。

从评论中我看到你正在使用 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
于 2013-09-19T07:16:23.740 回答
-2

为了获得月份和年份,我使用了以下代码。

Dim nStartMonth = Month(txtStartDate.Text)

Dim nStartYear = Year(txtStartDate.Text)

感谢大家的时间和帮助!:)

于 2013-09-19T07:35:45.037 回答