0
之前,我有我的表單直接調用Action,但現在,我想在調用Action之前使用JQuery來做些事情。我遇到的問題是,之前,當我從控制器調用返回View()時,它將重新加載部分頁面,並在消息中放入Viewbag.Message。我如何用JQuery來做到這一點?如何讓JQuery返回View?
$("#button").click(function() {
DoStuff();
});
function DoStuff()
{
$.ajax("Home/DoStuff"), function() {
};
}
$
[HttpPost]
public ActionResult DoStuff()
{
string value = Request.Form["value"];
Viewbag.Message = TempData["message"];
CustomView view = new CustomView();
return View(view);
}
我在這個[link](http://hectorcorrea.com/Blog/AJAX-calls-with-jQuery-in-ASP.NET-MVC)找到了一些東西。它顯示了你所寫的內容。它使用Json返回來讓我返回值而不是使用Viewbag。然後我可以使用JQuery將該值放入div中,因此我不必依賴Viewbag。 – 2011-05-18 17:19:46
對,如果你只是需要這些數據,那麼解決方案會更好。作爲旁註:如果你使用Views/PartialViews,ViewBag通常不是最好的選擇 - 使用強類型視圖,這可以長期避免很多頭痛。 – 2011-05-18 19:55:28