为什么数据从ajax传递到控制器始终为null

时间:2017-09-09 16:54:24

标签: jquery ajax laravel

我是Laravel的新手,我尝试使用post方法从ajax传递数据。

我的控制器我试图获取值,所以我使用返回响应来显示结果,但它总是为空。
这是我的代码:

n <= p and n|p => n=1 or n=p

我在我的控制器中尝试了这个,但它显示: {&#34; temps&#34;:null}

<script>
    $(function () {
        var tempsReal = 'matin';
        var dt = new Date($.now());
        var hs = dt.getHours();
        var d = new Date();
        d.setHours(12);
        if ((dt.getHours() >= d.getHours()))
            tempsReal = 'soir';
        $('#confirm').prepend('Marquer votre présence du : <strong>' + tempsReal + '</strong>');
        $(document).on('submit', '#frm', function (e) {
            e.preventDefault();
        .
            $ajax({
                method: $(this).attr('method'),
                url: $(this).attr('action'),
                data: {tempsReal: tempsReal},
                //data: $(this).serialize(),
                dataType: "json"
            })
        });
    })
</script>

我也总是这样: {&#34; temps&#34;:null}

public function store(Request $request)
{
    $this->tempsReal = $request->input('tempsReal');

    return Response::json([
        'temps' => $this->tempsReal,
    ]);
}

以下是表格:

public function store()
{
    $this->tempsReal = request()->get('tempsReal');

    return Response::json([
        'temps' => $this->tempsReal,
    ]);
}

我想知道问题出在哪里,我该如何解决?

1 个答案:

答案 0 :(得分:0)

在开发者控制台和方法中检查通过Ajax发送的数据。如果方法是'GET',那么因为你发送有效载荷作为JSON,那么laravel不能从请求中获得'tempsReal',如果请求方法是'POST'并且发送的数据包含{“tempsReal”:“”}则输出应包含预期值。