2011-02-23 123 views
0

我目前正在編寫一個簡單的web應用程序,它需要通過Ajax請求更新表單更改。jquery Ajax + ASP MVC 3表格

我在MVC1中做了一些基於Ajax的調用,但之後沒有觸及它,我相信我們使用的不是JQuery而是MicrosoftAjax。所以我已經讀過微軟目前正在使用JQuery並放棄MicrosoftAjax,並且對於如何讓我的表單與我的mvc操作進行通信感到困惑。還有一些關於Ajob調用的Unobtrusive Javascript的討論,但是我發現這一切都讓人感到困惑,得到了一個如何使用MVC3的Jquery調用動作並返回結果的可靠示例...

public AjaxController : Controller 
{ 
    public ActionResult Index() 
    { 
     return View(); 
    } 

    [AcceptVerbs(HttpVerbs.Post)] 
    public ActionResult AjaxAction(SomeModel model) 
    { 
     //...Do Stuff 
    } 
} 

<html> 
    <head> 
    </head> 
    <body> 
     <!-- Form goes here --> 
    </body> 
</html> 

所以我應該使用Html.FormBegin或AjaxBegin等?

回答

0

用jQuery更新到MVC3很簡單。

沒有爲MVC1-> MVC2的升級工具:http://weblogs.asp.net/leftslipper/archive/2010/03/10/migrating-asp-net-mvc-1-0-applications-to-asp-net-mvc-2-rtm.aspx

,並從MVC2升級工具 - > MVC3 http://blogs.msdn.com/b/marcinon/archive/2011/01/13/mvc-3-project-upgrade-tool.aspx

您也可以閱讀文檔以瞭解如何手動升級。

對於AJAX部分,一旦將正確的文件放入項目中(創建一個新的MVC3項目,並將所有JavaScript文件複製到當前項目中)並引用這些腳本而不是MSAjax,則應該準備好走。

不顯眼的部分,也是超級簡單。請參見http://yobriefcase.posterous.com/unobtrusive-javascript-in-mvc3

基本上只需在web.config中添加一些設置,並引用正確的javascripts,然後完成。最後,您可能不需要更改代碼中的任何內容,只需引用正確的文件並完成即可。

+0

對不起,我覺得有些混亂的事情,這不是一個遷移項目,它是一個新的新鮮MVC3項目。我只是將我對MVC和Ajax的知識放在我之前遇到的問題上,但是會對上面的內容進行閱讀。 – Grofit 2011-02-23 10:13:20

+0

忘記了這個問題,我最好在某人之後告訴我Javascript包含和使用jQuery調用ajax的表單/動作,發現它應該是Ajax.BeginForm()而不是Html.BeginForm與所有jquery包括,將給這個答案,因爲它非常豐富的關於不顯眼的javascript。 – Grofit 2011-03-17 07:14:46