Ajax提交success方法中添加页面跳转

Ajax提交页面跳转

Ajax提交请求时,在success方法中添加页面跳转。
1、 window.top.location.href、window.location.href等都不行,页面不会跳转,只是刷新页面。
2、 只有使用jQuery设置form action 属性才会跳转:

$("#form1").attr("action",contextPath+'/success');

3、那么没有form的页面是不是要添加一个form呢?其实可以直接设置window的location:
$(window).attr(‘location’,contextPath+”/search”);

栗子:

$.ajax({
        type : "post",
        url : url,
        async : false,
        data : JSON.stringify(data),
        dataType : "json",
        contentType:"application/json",
        success : function(data) {
            if(data.result==0){
                $("#form1").attr("action",contextPath+'/success');
            }else{
                $("#form1").attr("action",contextPath+'/success');
            }
        },
        error : function() {
            $.msg.alert("添加异常"); 
        }
    });

之前一直使用window.location.href跳转页面,但是在ajax请求处理中该方法失效,其只是刷新了一下页面,并没有跳转。网上搜了很久,也试了很多方法就是不行。然后就想到使用ajax提交时是用jQuery提供的方法,那么页面跳转是不是也可以使用jQuery提供的方法呢?结果真的可以。
在此做个记录,以防今后忘记了。

你可能感兴趣的:(js,jquery,spring-boot,jquery,ajax,js)