使用ajax请求从laravel中的jquery检索数据

使用ajax请求从laravel中的jquery检索数据,jquery,ajax,laravel,Jquery,Ajax,Laravel,我正在尝试使用laravel中的jQueryAjax请求检索数据。我总是在请求时收到500个内部服务器错误。我想在选择GRN no时自动加载表中的其他字段。任何有助于消除此错误的信息。我的代码如下 view-analysis.blade.php <div class="col-md-6 analysis-table"> <div class="description-table-1"> <input type="hidden" nam

我正在尝试使用laravel中的jQueryAjax请求检索数据。我总是在请求时收到500个内部服务器错误。我想在选择GRN no时自动加载表中的其他字段。任何有助于消除此错误的信息。我的代码如下

view-analysis.blade.php

<div class="col-md-6 analysis-table">
        <div class="description-table-1">
        <input type="hidden" name="_token" value="{{ csrf_token() }}">
            <u><h5>Supply - 01</h5></u>
            <table id="grn_for_MC">
                <tr>
                    <td width="40%">GRN</td>
                    <td>
                        <select name="grn-one" id="grn-one" class="input-sm dynamic" data-dependant="new-supply-data">
                            <option value="">Select GRN</option>
                            @foreach($grn_list as $grn_lists)
                            <option value="{{$grn_lists->id}}">{{$grn_lists->grn_no}}</option>
                            @endforeach
                        </select>
                    </td>
                </tr>
                <tr>
                    <td>Supply Date</td>
                    <td id="load-supply-date">14/02/2020</td>
                </tr>
                <tr>
                    <td>Supplier Name</td>
                    <td id="load-supplier">Mahesh Lowe</td>
                </tr>
                <tr>
                    <td>Quantity Supplied</td>
                    <td id="load-qty">10000.00kg</td>
                </tr>
                <tr>
                    <td>No of Bags</td>
                    <td id="load-no-of-bags">20</td>
                </tr>
            </table>
        </div>
    </div>
VeryfyCsrfToken.php

protected function tokensMatch($request){
    $token = $request->ajax() ? $request->header('X-CSRF-Token') : $request->input('_token');
    return $request->session()->token() == $token;
}
路线

Route::get('/getGrnData/{id}','TestController@ajax_show');

最后我找到了问题的答案。视图未更改。TestController.php&脚本已更改。我刚刚删除了TestController函数中的ajax验证,并从函数返回json响应。然后从ajax捕获数据,并将数据发送到请求的脚本

TestController.php

public function ajax_show($id)
{
    if(Request::ajax()){
        $grnId = Input::get("id");
        return Response::json('Success',$grnId);
    }
}
public function show($id)
{
    $loadData = DB::table('summery')->where('id',$id)->get();
    return response()->json($loadData);
}
脚本

<script>
$(document).ready(function(){
    $.ajaxSetup({
        headers: {
            'X-CSRF-TOKEN': $('meta[name="_token"]').attr('content')
        }
    });
    $('select#grn-one').on('change',function(e){
        var selected_grn_id = $(this).children("option:selected").val();
        $.ajax({
            type:"GET",
            dataType:"json",
            url:'/getGrnData/'+selected_grn_id,
            success:function(response){
                console.log(response);
            }
        })
    });

});

最后我找到了问题的答案。视图未更改。TestController.php&脚本已更改。我刚刚删除了TestController函数中的ajax验证,并从函数返回json响应。然后从ajax捕获数据,并将数据发送到请求的脚本

TestController.php

public function ajax_show($id)
{
    if(Request::ajax()){
        $grnId = Input::get("id");
        return Response::json('Success',$grnId);
    }
}
public function show($id)
{
    $loadData = DB::table('summery')->where('id',$id)->get();
    return response()->json($loadData);
}
脚本

<script>
$(document).ready(function(){
    $.ajaxSetup({
        headers: {
            'X-CSRF-TOKEN': $('meta[name="_token"]').attr('content')
        }
    });
    $('select#grn-one').on('change',function(e){
        var selected_grn_id = $(this).children("option:selected").val();
        $.ajax({
            type:"GET",
            dataType:"json",
            url:'/getGrnData/'+selected_grn_id,
            success:function(response){
                console.log(response);
            }
        })
    });

});

您的确切错误是什么?您可能还应该包括路由。@Qonvex620:我的错误是代码500内部服务器错误。在添加此代码部分返回响应::json$request->all;您的确切错误是什么?您可能还应该包括路由。@Qonvex620:我的错误是代码500内部服务器错误。在添加此代码部分返回响应::json$request->all;