laravel AJAX功能没有返回值
问题描述:
你好我工作的laravel并试图使一个AJAX动作laravel AJAX功能没有返回值
function jsfunctionrr(value){
var value_parts = value.split("+");
$.ajax({
type: 'POST',
url: '/getpoinsts',
data: {
'_token': $('input[name=_token]').val(),
'name': value_parts[1]
},
success: function (data) {
$('#pointsValue').append(total_points);
}
});
和控制器功能
public function getpoinsts(Request $request)
{
$user_points_parts = DB::table('clients_points')->where('user_id', $request->name)->get;
$total_points = 0;
foreach ($user_points_parts as $points_part) {
$total_points += $points_part->points;
}
return response()->json($total_points);
}
和路线
Route::post('/getpoinsts', '[email protected]');
但我没有得到任何值的价值知道为什么?
答
有代码中的一些问题,我注意到:
-
->get;
应该get();
- 有可能是一个问题,试图将数字转换成JSON。
- 在您引用
total_points
的ajax方法中,它没有在任何地方定义。
试着改变你的控制器方法:
public function getpoinsts(Request $request)
{
$total_points = DB::table('clients_points')->where('user_id', $request->name)->sum('points');
return response()->json(compact('total_points'));
}
和你的Ajax方法:
$.ajax({
type: 'POST',
url: '/getpoinsts',
data: {
'_token': $('input[name=_token]').val(),
'name': value_parts[1]
},
dataType: 'json',
success: function (data) {
$('#pointsValue').append(data.total_points);
}
});
希望这有助于!
+0
它的工作 你救了我的一天 – user3721008
您是否尝试在您的AJAX调用中添加“错误”函数以查看您的调用是否不成功? –
你至少得到200回应吗? –
我该怎么做 – user3721008