使用ajax插入时,复制到数据库中

时间:2017-03-06 21:34:38

标签: laravel laravel-5.3

我正在尝试使用ajax插入我的laravel项目的数据库,但每次我插入时,我会看到每个项目的重复项都有唯一的ID。 通常使用表单本身插入,此行为不会重复。

我的ajax代码如下。

    `$('#saveCat').on('click', function (e) {
 e.preventDefault();
    $.ajaxSetup({
        headers: {
            'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
        }
    });


    var url = '/admin/storecat';
    var type = "post";

    var data = {spec: $('#cat').val() };

    $.ajax({
        type: type,
        url: url,
        data: data,
        dataType: 'json',
        success: function (data) {
            console.log(data);

            $('#catform').trigger('reset');

            //show success alert msg
            $('#alert-suc').html(data);
            $('#ac-alert').show('slow', function () {
                setTimeout(function () {
                    $('#ac-alert').hide('slow');
                }, 3000);
            });
        },
        error: function (data) {
            console.log('Error:', data);
        }
    });
});

我的控制器动作

public function storeCat(Request $request) {

$Category = new Category;

$Category->name = $request->spec;
$Category->save();

return response()->json('New service category ' . $request->spec . ' has been added.');

}

1 个答案:

答案 0 :(得分:0)

尝试使用:

e.stopImmediatePropagation();

stopImmediatePropagation将阻止任何父处理程序以及任何其他处理程序执行。