如何使用jquery ajax将日期时间传递给控制器操作? 使用jquery ui datepicker ie.textbox和日历控件。
行动仍然是控制器/行动/ 2011年11月12日,这不起作用......任何帮助请求?
这就是我所拥有的:
$.ajax({
url: '<%: Url.Action("myPartial", "myController") %>/' + dateString,
type: "GET",
dataTypeString: "html",
success: function (response, status, xhr) {
var container = $("#myContainer");
container.html(response);
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
var container = $("#myContainer");
container.html('<div class="Error">An error occurred</div>');
}
});
其中var dateString = $('#myDate').val();
答案 0 :(得分:4)
如果你在控制器上有一个动作方法,那么:
[HttpGet]
public ActionResult SomeMethod(int objectId, DateTime startDate, DateTime endDate) {
...
}
你可以在javascript中使用下一个构造:
var start = new Date();
var end = new Date();
end.setDate(start.getDate() - 1);
var parameters = { objectId: objId, startDate: start.toUTCString(), endDate: end.toUTCString() };
// ....
$.ajax({
url: '/YourController/SomeMethod',
method: 'GET',
data: parameters,
cache: false,
success: function (data, textStatus, jqXHR) {
//...
},
error: function (jqXHR, textStatus, errorThrown) {
//...
}
});
这是我的代码的一部分。这不是确切的解决方案,但您可以使用此示例进行一些修改。
答案 1 :(得分:0)
您可以用连字符替换“/”,或尝试使用urlEncode函数。