dongzhi1851 2017-05-23 01:56
浏览 134
已采纳

lajvel的ajax帖子无法重定向,表单提交可以重定向

First of all, I am a Chinese student. I will try my best to explain my question, but my English is not very good. So sorry. In my login web, I will use ajax post data(id,passwd...) to a route. After all confirm, if the data was right, login web will redirect to another web route. But the controller function can not redirect. Like:

return redirect('wx/setdev');
//not work in controller function ,but work in route function

If I submit a form to controller, controller can redirect to the web route but ajax can't.

$.post("{{route('cfmlogin')}}",{
   _token : "{{csrf_token()}}",
   user : $('#num').val(),
   passwd : $('#passwd').val()
});

I don't know why! Please help me with this.

Thanks

  • 写回答

1条回答 默认 最新

  • dongmou1964 2017-05-23 04:14
    关注

    Instead of returning an redirect to the ajax response, you have to return the url and let the ajax callback function redirect to the url.

    So you need to change

    return redirect('wx/setdev');
    

    to

    return url('wx/setdev');
    

    and in your jQuery ajax post, pass an third parameter for the success callback function to redirect

    $.post("{{route('cfmlogin')}}", {
        _token : "{{csrf_token()}}",
        user : $('#num').val(),
        passwd : $('#passwd').val()
    }, function (data) {
        window.location = data;
    });
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 MATLAB图像问题
  • ¥20 树莓派5做人脸情感识别与反馈系统
  • ¥15 selenium 控制 chrome-for-testing 在 Linux 环境下报错 SessionNotCreatedException
  • ¥15 使用pyodbc操作SQL数据库
  • ¥15 MATLAB实现下列
  • ¥30 mininet可视化打不开.mn文件
  • ¥50 C# 全屏打开Edge浏览器
  • ¥80 WEBPACK性能优化
  • ¥30 python拟合回归分析
  • ¥500 metaswitch 6010