Перенаправление на страницу после публикации из ajax - PullRequest
4 голосов
/ 18 февраля 2010

Хочу перенаправить на действие Индекс, контроллер Admin после поста от ajax.

$.post("/Admin/Create", { inputs: inputs, columnsCount: columnsCount, });

Как я могу изменить этот код, чтобы перенаправить его на страницу индекса после успеха?

Ответы [ 3 ]

11 голосов
/ 18 февраля 2010

используйте третий параметр post

$.post(
    "/Admin/Create", 
    { inputs: inputs, columnsCount: columnsCount, },
    function() {
        window.location.replace("/Admin/index");
    }
);
4 голосов
/ 26 ноября 2014

Хотя window.location.replace или window.location.href определенно работают, я призываю вас сделать шаг назад и подумать, нужен ли вообще вызов Ajax!

Ajax используется для обновления части страницы, и при частичном обновлении страницы вы не будете перенаправлять пользователя на другую страницу.

Так что если вы тщательно обдумаете, вы можете заменить ваш пост ajax обычным постом и перенаправить пользователя на действие, отличное от самого контроллера. Таким образом, вы также будете следовать гораздо более чистому шаблону Post-Redirect-Get.

0 голосов
/ 18 февраля 2010
$.post("/Admin/Create", {
    inputs: inputs,
    columnsCount: columnsCout
}, function(){
    window.location.href = "http://..../Admin/Index";
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...