0

在我的 jQuery 代码中,我调用了一个控制器操作,并尝试从 fullcalendar 插件中传递日期:

url: ('Home/List/?dateValueStart=' +  new Date($('#calendar').fullCalendar('getView').start))
+ '&dateValueEnd=' + new Date($('#calendar').fullCalendar('getView').end),

在我的控制器中,我的方法设置如下:

public ActionResult List(String dateValueStart, String dateValueEnd)

当我调试 dateValueStart 时,我看到:

Tue Oct 1 00:00:00 MDT 2013

DateTime dateVal = Convert.ToDateTime(dateValueStart);

但是当我尝试将其转换为日期时,它告诉我它是无效的。

字符串未被识别为有效的日期时间。

如何获得接近 2013 年 10 月 1 日的日期?

4

1 回答 1

0

Javascript 日期支持不是最好的。有更短的方法可以执行以下操作,但它们不适用于所有浏览器:

var formatDate = function(d){
    var curr_date = d.getDate();
    var curr_month = d.getMonth() + 1; //Months are zero based
    var curr_year = d.getFullYear();
    return curr_month + "/" + curr_date + "/" + curr_year;
}

var startDate = new Date($('#calendar').fullCalendar('getView').start);
var endDate = new Date($('#calendar').fullCalendar('getView').end);

var url = 'Home/List/?dateValueStart=' + formatDate(startDate) + '&dateValueEnd=' +
formatDate(endDate)

另外,看看这个

于 2013-10-01T19:59:13.450 回答