2010-04-25 70 views
0

失去方面,我有一個頁面上調用像這樣一個jQuery的對話框:從JQuery的崗位與ASP.Net MVC

$.post("/MyController/MyAction", { myKey: key} //... 

而這種成功獲取位置:

[HttpPost] 
public ActionResult MyAction(int myKey) 
{ 
    //do some stuff 
    return RedirectToAction("AnotherAction");  
} 

問題是RedirectToAction對webbrowser沒有影響。我猜這是因爲JQuery的帖子有點不同,所以它不知道在哪裏發送響應?我如何讓瀏覽器加載新的響應?

回答

0

是的,$.post正在做一個ajax後,行動將不會重定向。

如果你正在重寫,爲什麼不直接做表單提交,不需要ajax。

或者,您可以執行$.get並返回JsonResult以指示成功/失敗並使用jQuery/javascipt重定向。

更新

事情是這樣的:

在這裏你可以設置OK或ERR結果,並添加任何對象作爲「項目」,這可有得上查看或錯誤使用消息,重定向到的URL等

[HttpPost] 
public JsonResult MyAction(int myKey) 
{ 
    //do some stuff 
    return new JsonResult { Data = new { Item = item, Result = "OK/ERR" } }; 
}