Laravel 5.4 $ .post()jquery.min.js:4 POST 500(内部服务器错误)

时间:2017-11-20 10:36:55

标签: php jquery ajax laravel-5.4

这是我第一次在laravel中使用jquery post函数。我正在使用laravel 5.4。我想通过jquery提交数据。

这是我的刀片模板视图:

 -   -   -
(A + B + C)

路线:

<head>
    <meta charset="UTF-8">
    <meta name="csrf-token" content="{{ csrf_token() }}">
</head>

<body>
<form class="form-horizontal" method="POST" action="{{ route('doctor.register') }}">
    {{ csrf_field() }}
    <input type="hidden" name="_token" id="token" value="{{ csrf_token() }}">
    <a href="#" id="ajaxclick">On click ajax</a>
</form>
</body>

JS档案:

Route::post('/ajax', 'TestController@ajax')->name('test.ajax');

控制器:

$(document).ready(function() {
    $( "#ajaxclick" ).click(function() {
        var token = $("#token").val();
        var identity = 5;
        $.post( "/ajax", { id: identity, token: token },
            function( data ) {
                console.log( "ajax working"); 
                console.log( data.id );
            }, "json");

    });
});

但是当我点击标签时,它在控制台日志中给出了500(内部服务器错误)。

现在,我如何通过post函数传递数据?有什么帮助吗?

1 个答案:

答案 0 :(得分:-1)

<强>解决:: 我编辑了我的JS文件,如下所示:

$(document).ready(function() {
    $( "#ajaxclick" ).click(function() {
        $.ajaxSetup({
            headers: {
                'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
            }
        });
        var token = $("#token").val();
        var identity = 5;
        $.post( "/ajax", { id: identity, token: token },
            function( data ) {
                console.log( "ajax working"); 
                console.log( data.id );
            }, "json");
    });
});