使用laravel使用ajax以模式提交表单

使用laravel使用ajax以模式提交表单,ajax,forms,bootstrap-modal,laravel-5.2,Ajax,Forms,Bootstrap Modal,Laravel 5.2,我试图通过一个加载在modal中的表单上传文本和文件,并使用ajax提交(我使用的是laravel5.2),但我不明白为什么它不起作用。我尝试了许多在这里找到的解决方案,并通过搜索引擎找到了 简单表单(此表单以模式加载) 路线 Route::post('register',[ 'uses' => 'AdminController@postRegister', 'as' => 'postRegister']); 控制器//只是想让它正常工作 publ

我试图通过一个加载在modal中的表单上传文本和文件,并使用ajax提交(我使用的是laravel5.2),但我不明白为什么它不起作用。我尝试了许多在这里找到的解决方案,并通过搜索引擎找到了

简单表单(此表单以模式加载)

路线

 Route::post('register',[
        'uses' => 'AdminController@postRegister',
        'as' => 'postRegister']);
控制器//只是想让它正常工作

public function postRegister(Request $request)
    {
        return "success";
    }

您的问题可能是由于您的AJAX应该使用控制器返回JSON响应

请尝试以下操作:

public function postRegister(Request $request)
    {
        return response()->json(['success' => 'success']);
    }
通过以上操作,您现在可以访问视图中的对象

另外,记住在AJAX中传递CSRF令牌。当我使用AJAX时,我通常会在视图中添加该变量,并将该变量传递给数据,如下所示:

<script>
    var token = '{{ Session::token() }}';
</script>

$.ajax({
        url: 'register',
        type: 'POST',
        data: {variable1: variable1, variable2: variable2, _token: token},,
        success: function(msg){
            alert(msg);
        }
        contentType: false,
        processData: false

    });

var-token='{{Session::token()}}';
$.ajax({
url:'注册',
键入:“POST”,
数据:{variable1:variable1,variable2:variable2,_-token:token},,
成功:功能(msg){
警报(msg);
}
contentType:false,
processData:false
});

“不工作”无法帮助我们理解您的问题如果我知道问题的原因,我会告诉您,但在这种情况下,我的控制器根本没有被调用。使用chrome,按f12切换到网络选项卡,提交表单,查看您得到的错误可能是CORS错误。请检查浏览器开发控制台日志并还原
public function postRegister(Request $request)
    {
        return response()->json(['success' => 'success']);
    }
<script>
    var token = '{{ Session::token() }}';
</script>

$.ajax({
        url: 'register',
        type: 'POST',
        data: {variable1: variable1, variable2: variable2, _token: token},,
        success: function(msg){
            alert(msg);
        }
        contentType: false,
        processData: false

    });