【发布时间】:2019-07-23 22:21:31
【问题描述】:
我试图弄清楚为什么我的成功的 ajax 警报从我的控制器返回 null。
我只是序列化一个表单,将它提交给控制器并解析它以获得数组分解。
ajax 是成功的,因为警报被触发,但数据,应该是结果数组,在警报中实际上是 null。
我做错了什么?
view.blade
<form id="codeGeneration">
<?php $i = 1; ?>
@foreach($getRuleAttributes as $attributes)
@if($attributes->title == 'New')
<tr>
<td><input type="checkbox" name="attribute[{{$i}}]['checked']"></td>
<td><label>{{ $attributes->title }}</label></td>
<input type="hidden" name="attribute[{{$i}}]['attributet_id']" value="{{ $attributes->attributet_id }}">
<input type="hidden" name="attribute[{{$i}}]['attribute_data']" value="0">
<input type="hidden" name="attribute[{{$i}}]['attribute_type']" value="promo_codes">
</tr>
@else
<tr>
<td><input type="checkbox" name="attribute[{{$i}}]['checked']"></td>
<td><label>{{ $attributes->title }}</label></td>
<td><input type="text" name="attribute[{{$i}}]['attribute_data']"></td>
<input type="hidden" name="attribute[{{$i}}]['attributet_id']" value="{{ $attributes->attributet_id }}">
<input type="hidden" name="attribute[{{$i}}]['attribute_type']" value="promo_codes">
</tr>
@endif
<?php $i++; ?>
@endforeach
</form>
//ajax
var form_data = $("#codeGeneration").serialize();
$.ajax({
type:'POST',
url:'savePromoInfo',
data:{form_data:form_data},
_token: '{{ csrf_token() }}',
success: function(data){
alert(data);
}
});
控制器
public function savePromoInfo()
{
$form_data = $request->form_data;
parse_str($form_data, $my_array_of_vars);
$attr = $my_array_of_vars['attribute'];
return json_encode($attr);
}
【问题讨论】:
标签: javascript html ajax laravel