![](/img/trans.png)
[英]How to return a list from AJAX method to view from controller ASP.NET MVC
[英]How to use AJAX Post to invoke ASP.NET MVC Controller action and return new View?
我正在ASP.NET MVC中的一个网站上向用户显示日历,单击特定的日历日期将调用以下功能:
function selectHandler(event, data) {
var myRequest = new Request.HTML({
url: '/Calendar/EventList',
method: 'post',
data: { datedata: data.toString() },
update: $('postback'),
}).send();
};
我正在使用MooTools AJAX类来调用我的Controller Action / Calendar / EventList,如下所示:
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult EventList(string datedata)
{
CalendarViewData viewData = new CalendarViewData
{ EventList = GetEventsList(datedata) };
return View(viewData);
}
我可以在EventList操作中设置一个断点,看看它正在返回视图,但是浏览器仍保留在初始页面上,并且从不重定向到此EventList操作返回的页面。
我怀疑我需要在我的JavaScript函数中添加更多内容,但不确定是什么。 有任何想法吗?
为什么浏览器会重定向? 您正在向控制器操作发送AJAX请求,该操作返回一个视图(这可能是错误的,您可能需要返回一个局部视图),然后该视图用于更新DOM中的某些元素。 如果要重定向,可以使用简单的锚标记(如果需要POST,则可以使用form
),而无需使用javascript。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.