Laravel动态表单构建与JS

时间:2016-12-14 09:05:08

标签: javascript php jquery forms laravel-5

我正在开发一个Laravel应用程序,我有一个表单内置到我的javascript,我动态尝试设置动作和方法,并根据我的下拉选择的值发布表单。

表格代码:

function _RemoveForm(url){
    var delete_form = '{{ Form::open(array("method" => "GET", "id" => "_RemoveForm")) }} {{ Form::close() }}';
    return delete_form;
}

当我在js中使用form.submit()发布此表单时,我可以路由/重定向到编辑或索引,但是当我发布此表单以进行销毁时,需要方法是' post'它显示

TokenMismatchException in VerifyCsrfToken.php line 68:

是否可以创建这样的表单并发布到操作?或者我应该尝试其他方法。

编辑:

表格是从这样的字符串创建的:

var form = "{{ Form::open(array("method" => "GET", "id" => "_RemoveForm")) }} {{ Form::close() }}";
    $("body").append(form);

    form = $("#_RemoveForm");

    form.attr('action', url);

    if(method == 'delete'){
        form.attr('method', 'post');
        form.append('<input name="_method" type="hidden" value="DELETE">');
    }

    form.submit();

这是在下拉列表的更改事件中完成的。

1 个答案:

答案 0 :(得分:0)

CSRF令牌是否随您的请求一起发送? e.g。

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

<meta name="_token" content="{{ csrf_token() }}">