2010-06-29 70 views
1

我正在使用MVC Ajax.BeginForm("LogOn", "Account", new AjaxOptions { UpdateTargetId="updateajax" }) <div id=updateajax/>,因此它只會更新到該區域。登錄表單是ajax.beginform。但是,您可以取消控制器內的AjaxRequest。我想要的是,當我在ajax中登錄時,它只會更新驗證,但當登錄成功時,我希望整個頁面重新定向或再次更新。在我的控制器中,當登錄成功時,我返回整個頁面,但將整個內容放入updateajax div中。我能做些什麼來解決這個問題?我只是想在登錄成功時停止ajax調用。C#ASP.NET MVC AJAX登錄表

回答

2

你必須重定向或更新整個頁面。 或者你可以將整個body的內容封裝在div和ajax中更新一個。我的建議是繼續前進並重定向,因爲如果腳本在加載時運行,則必須手動調用它們。

<body> 
    <div id="ajaxUpdatedPanel"> 
     <% using (Ajax.BeginForm("LogOn", "Account", new AjaxOptions { 
         UpdateTargetId="ajaxUpdatedPanel", 
         OnSuccess = "redirectTo" }) { %> 
     .... 
     .... 
     <script type="text/javascript"> 
      function redirectTo() { 
       window.location = "your_redirect_url"; 
      } 
     </script> 
    <div> 
    </body> 
+0

謝謝你的回答 – Ganator 2010-07-11 01:41:29