【发布时间】:2020-04-14 03:51:04
【问题描述】:
我通过 ajax 向控制器发送数据并返回一个 json 响应,但是当我尝试使用响应执行操作时它不起作用。
jQuery 代码
$.ajax({headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
},
type:'POST',
url:'/save-item',
data:datas,
success:function(data){
if(data.success){
alert("done");
}
},
//error: function(jqXHR, textStatus, errorThrown) {
//console.log(textStatus, errorThrown);
error: function (data) {
console.log('Error:', data);
}
});
Laravel 代码
public function saveItem(Request $request){
print_r($request->input('iname'));
$input = $request->input('iname');
//print_r(Input::all());
return response()->json(['success'=>true]);
}
【问题讨论】:
-
你可以尝试删除
print_r($request->input('iname'));吗? -
it's not working-- 好的,你遇到错误了吗?你的 laravel 路由设置是 POST 吗?请更具体。 -
@Froxz 谢谢我犯了这个愚蠢的错误,删除
print_r($request->input('iname'));后它正在工作 -
另外,@Froxz 很可能是正确的。如果您在设置 json 标头之前输出某些内容,则可能会引发标头已发送错误。
-
@JeremyHarris 没有错误,只是内容不再是 JSON,因为输出将是:
value_of_input_name{"success":true}
标签: jquery json ajax laravel laravel-5.8