我正在尝试使用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.');
}
答案 0 :(得分:0)
尝试使用:
e.stopImmediatePropagation();
stopImmediatePropagation
将阻止任何父处理程序以及任何其他处理程序执行。