从Javascript传递给MVC Control参数

时间:2013-10-01 19:41:46

标签: c# javascript jquery asp.net-mvc fullcalendar

在我的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);

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

  

字符串未被识别为有效的DateTime。

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

1 个答案:

答案 0 :(得分: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)

另外,请查看this