如何使用ajax请求将html表传递给laravel控制器?

时间:2017-07-09 08:26:04

标签: php jquery ajax laravel-5.3

如何使用ajax请求将html数组传递给laravel控制器? 我在下面的观点中确实如此:

<form>
                <table class="table table-striped border-top" id="modalTable">
                    <thead>
                        <tr>
                           <th>start-time</th>
                           <th></th>
                           <th>end-time</th>
                           <th>reserve</th>
                        </tr>
                    </thead>
                    <tbody id="change">
                        <tr>
                            <td name="startTime[]"></td>
                            <td></td>
                            <td name="endTime[]"></td>
                            <td name="reserved[]"></td>
                        </tr>
                    </tbody>
                </table>
                <input type="hidden" id="token" value="{{ csrf_token() }}">
            </form>

和ajax代码如下:

<script>
    $(document).on('click','.btn',function(){

        var startTime = $('#startTime').text();
        //alert(startTime);
        var endTime = $('#endTime').text();
        //alert(endTime);
        var token = $('#token').val();

        $.ajaxSetup({
            headers: {
                'X-CSRF-TOKEN': $('meta[name="_token"]').attr('content')
            }
        })

        $.ajax
        ({
            url:'reservePrivateChat',
            type:'post',
            data:{startTime:startTime,endTime:endTime,'_token':token},
            success:function()
            {
                alert('success');
            },
            error:function()
            {
                alert('error');
            }
        })

    });
</script>

在控制器中我确实如下:

public function reservePrivateChat(Request $request)
{
    $startTime = $request->startTime;
    print_r ($startTime);
    $endTime = $_POST['endTime'];
    print_r($endTime);
}

在控制器中,$request$_POST之间没有区别。两者都只返回由ajax发送的表的一列,但我想要列的所有值...

1 个答案:

答案 0 :(得分:0)

你无法做你想做的事情。您必须根据表数据的正确名称手动构建阵列。 extends mylayout block content h1= title - if(typeof myuser !== 'undefined'){ p Hi #{myuser.firstName} p Your email is #{myuser.email} p Your mobile number is #{myuser.mobileNumber} p a(href='http://localhost:3000/users/logout') logout - } else { - } 选择器不存在,因为它正在查找标识为#startTime的元素,但您只有名称 startTime的元素。

你可能会按如下方式创建一个数组:

startTime[]