SpringBoot　ajaxで画面遷移させたときにURLを変えたい


下記のような処理を呼ぶことで確かに画面はTestへ遷移するのですが  
URLのXXXの部分が変わらずに困っています。  
localhost:8080/XXX

submitで実施すると変わったのですが、  
ajaxのfail()箇所でエラー処理などを行いたいのです…。  
ajaxでURLを変えて画面遷移させる場合はどのようにしたらよいのでしょうか。  
もしくはsubmit後に戻りを受け取れないでしょうか。

■Jabascript側

[code]

    $.ajax({
        type : "post",
        url: "test",
        data:JSON.stringify(data),
        dataType : "html",
        contentType: "application/json",
    }).done(function(responseData, status, jqXHR) {
        $('#page-top').html(responseData);
    }).fail(function(responseError, status, errorThrown) {
    });
    
[/code]

■Controller側

[code]

    @RequestMapping(value = "/test", method = RequestMethod.POST,
            consumes = MediaType.APPLICATION_JSON_VALUE)
    public ModelAndView loadTest(ModelAndView mav) {
        mav.setViewName("test");
        return mav;
    }
    
[/code]

□Javascript submitで実施

[code]

    var $html = $('<form>', {
        id : 'testForm',
        method : 'post',
        action : 'test',
        style : 'display: none;'
    });
    $('body').append($html);
    $('#testForm').submit();
    $('#testForm').remove();
    
[/code]




ajaxは画面をリロードしないで、情報をやり取りする方法です。  
ajaxは画面遷移ではなく画面の表示を差し替えというイメージです。  
Submitは画面をリロードして表示します。  
JavaScriptでブラウザの表示URLの書き換えはセキュリティ的にできないはずです。

Submitで遷移前のJavaScriptへ処理を受け渡すことはできません。  
サーバー側で遷移先の画面を表示する際に、JavaScriptのコードを生成して、  
Loadイベント等で処理するしかないと思います。




ajaxは画面をリロードしないで、情報をやり取りする方法です。  
ajaxは画面遷移ではなく画面の表示を差し替えというイメージです。  
Submitは画面をリロードして表示します。  
JavaScriptでブラウザの表示URLの書き換えはセキュリティ的にできないはずです。

Submitで遷移前のJavaScriptへ処理を受け渡すことはできません。  
サーバー側で遷移先の画面を表示する際に、JavaScriptのコードを生成して、  
Loadイベント等で処理するしかないと思います。

