douxie9471 2017-01-03 19:21
浏览 127
已采纳

laravel ajax动作网址带参数

I have a problem with an ajax call. The url that i need to get the data is:

localhost/public/getCode?course_id=1&task_id=1

My ajax call is:

function getCode() {
                $.ajax({
                    type: "GET",
                    dataType: 'json',
                    url: "{{action('CodeEditorController@getCode',['course_id'=>$course,'task_id'=>$maintask])}}",
                    success: function (data) {
                        console.log(data);
                    }
                });
            }

But the data returned is empty.

Edit: getCode function:

public function getCode(Request $request)
{
    $code=Code::where('user_id',$user->id)->where('main_task_id',$request->input('task_id'))->first()->code;
    $response = [
        'data' => $code
    ];

    return response()->json($response, 200);
}

What is the issue with my ajax code?

Thanks!

  • 写回答

1条回答 默认 最新

  • dongxiang5879 2017-01-03 19:55
    关注

    One way to do that is to use data for options:

    data: {
        'course_id': {{ $course }},
        'task_id': {{ $maintask }} 
    },
    

    To get values in controller you can just use request('course_id') and request('task_id')

    Also it's a really bad idea to use Blade/PHP to build JS. You should use hidden inputs or something to pass data to JS.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?