Как вернуться к просмотру после поста ajax на контроллере? - PullRequest
0 голосов
/ 07 мая 2018

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

<script type="text/javascript">
$(document).ready(function () { 
    $("Submit").click(function (e) {
        e.preventDefault();

        var token = $('input[name=__RequestVerificationToken]').val();
        console.log(token);

        var dataToPost = $(this).serialize();
        $.ajax({
            url: "Process/Payment"
            , method: "POST"
            , data: {
                __RequestVerificationToken: token
                , page: dataToPost
            }
            , done: function (data) {
                window.location.replace (data.newUrl);
                alert(data);
            }
            , error: function () {
                alert("Ajax call failed");

            }
        })
    })
})

и это мой контроллер. Все данные, которые переносятся в модель «Платеж», находятся в хорошем состоянии и хорошо передаются от просмотра к контроллеру. И я хочу вернуться к просмотру (URL: «Процесс / Оплата»)

[HttpPost]
public ActionResult Allowance (Allowance allowance) {
    return Json(new {
            newUrl = Url.Action("Payment", "Process")
        }
    );

но когда страница возвращается на localhost, я просто получаю эту страницу.

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

почему " window.location.replace () " не может перенаправить страницу на исходную страницу?

Thx в

1 Ответ

0 голосов
/ 07 мая 2018

Просто добавьте window.location.href == "Ваша желаемая страница"; на событие успеха вашего вызова Ajax. Это сработает.

Счастливое кодирование.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...