C # ASP.NET MVC AJAX Форма входа - PullRequest
1 голос
/ 29 июня 2010

Я использую MVC Ajax.BeginForm("LogOn", "Account", new AjaxOptions { UpdateTargetId="updateajax" }) <div id=updateajax/>, поэтому он обновляется только в этой области. Форма входа - это форма ajax.beginform. Но вы можете отменить AjaxRequest внутри контроллера. Я хотел, чтобы при входе в ajax он обновлял только проверки, но при успешном входе в систему я хочу, чтобы вся страница была перенаправлена ​​или обновлена ​​снова. В моем контроллере я возвращаю всю страницу, когда вход в систему успешен, но это помещает весь контент в div updateajax. Что я могу сделать, чтобы решить эту проблему? Я просто хочу остановить вызов ajax при успешном входе в систему.

1 Ответ

2 голосов
/ 30 июня 2010

Вы должны либо перенаправить, либо обновить все тело страницы.Или вы можете обернуть все содержимое тела в div и обновить его.Я предлагаю пойти дальше и перенаправить, потому что если у вас есть скрипты, которые работают под нагрузкой, вам придется вручную вызывать их.

    <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>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...