如何弹出插件的消息框,才跳转页面

$.ajax({

                type:"post",
                url: "/menu/delete",
                data: {"id":$("#operateMenuOfNodeId").val()},
                success:function(data){
                    if(data.success == true){
                        toastr.success(data.message);
                        window.location.reload();
                    }else{
                        toastr.error(data.message);
                    }
                },
                error:function(){
                    toastr.error("服务器错误");
                }
            });
            
            
            
          toastr.success(data.message);这个是弹出一个消息框,但是由于跳转了页面,没有显示出来,我想要的效果是跳转页面的时候,消息框同步显示。如果注释掉跳转,消息框才出现,可以是刷新了页面,覆盖了消息框,怎么解决啊?
阅读 4.1k
4 个回答
用settimeout 延时跳转
$.ajax({

    type:"post",
    url: "/menu/delete",
    data: {"id":$("#operateMenuOfNodeId").val()},
    success:function(data){
        if(data.success == true){
            toastr.success(data.message);
            setTimeout(function() {
              window.location.reload();
            }, 3000)   
        }else{
            toastr.error(data.message);
        }
    },
    error:function(){
        toastr.error("服务器错误");
    }
});          

reload 刷新页面,提示框也会消失,
所以得保证同步执行的顺序,先出现弹窗,消失后,再reaload();
1, 弹窗里面加确认按钮,点击跳转
2, setTimeout超时后,reload();

可以看下这个插件有没有回调函数,有的话可以在回调函数中跳转页面,没有的话可以写个定时器跳转

你这个逻辑肯定会跳转页面而不会弹出提示框啊,你把提示框放在跳转之前执行啊

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题