我有一個視圖,當我通過代碼時,我沒有被調用,我看到它到達控制器中的操作並返回視圖,但它不加載視圖,它只是停留在當前頁。查看不渲染MVC 4
當在特定頁面上單擊某個按鈕時,會調用ajax帖子調用下一個不加載的頁面。
我的位指示行動看起來是這樣的:
public ActionResult Comparison(int[] y)
{
CostModel.Getsuff(y);
return View(CostModel);
}
我的路線圖是這樣的:
routes.MapRoute(
name: "Compare",
url: "Category/Comparison/{*xxxx}",
defaults: new { Controller = "Category", Action = "Comparison" }
).RouteHandler
= new CategoriesRouteHandler();
public class CategoriesRouteHandler : IRouteHandler
{
public IHttpHandler GetHttpHandler(RequestContext requestContext)
{
IRouteHandler handler = new MvcRouteHandler();
var vals = requestContext.RouteData.Values;
var list = vals["xxxx"].ToString().Split(',');
int[] y= new int[list.Length];
for (int i=0; i < list.Length; i++)
int.TryParse(list[i].ToString(),out y[i]);
vals.Add("y", y);
return handler.GetHttpHandler(requestContext);
}
}
我的AJAX
$.ajax({
type: "POST",
url: '@Url.Action("Comparison", "Category", new { Categories = "PLACEHOLDER"})'.replace('PLACEHOLDER', arr),
dataType: "json",
traditional: true,
success: function(msg){alert(msg)}
});
正如我前面提到的,當我跟蹤它,它執行ajax調用罰款,並擊中控制器上的行動,它只是不啓動視圖。我認爲這可能與該地區沒有在任何地方定義的事實有關?所以也許它扔掉了,在MVC 4中無法看到指定不同區域的任何地方,但我是MVC的新手。任何幫助將不勝感激。
謝謝你的快速反應,因爲你可能已經猜到我對ajax也很陌生,非常感謝讓我的週末:) – user329540 2012-08-17 13:30:32