在 jQuery $.ajax 中读取 Laravel JSON 响应
Posted
技术标签:
【中文标题】在 jQuery $.ajax 中读取 Laravel JSON 响应【英文标题】:Reading Laravel JSON response in jQuery $.ajax 【发布时间】:2014-09-09 10:14:54 【问题描述】:我在阅读 Laravel 的 json 响应时遇到了奇怪的问题。这是我的代码:
$.ajax(
url: 'getallpoints',
type: 'get',
dataType: 'json',
success: function(r)
var lat = r.lat;
var lng = r.lng;
var status = r.status;
var marker = new google.maps.Marker(
position: new google.maps.LatLng(lat,lng),
map: map
);
);
这是我的 Laravel 代码
在 routes.php 中
Route::get('/getallpoints', 'PointController@getallpoints');
在 PointController.php 中
class PointController extends BaseController
public function getAllPoints()
return Point::all();
我对这些没有定义:
var lat = r.lat;
var lng = r.lng;
我也试过Response::json(Point::all())
,但同样的错误。
【问题讨论】:
请考虑阅读此***.com/questions/15602129/… @delmadord 我已经检查过了,尝试了所有可能性。看起来 Laravel 返回 json 数据,可以在 firebug 中看到,但 javascript 有问题。我什至使用了 $.parseJSON 但没有用 【参考方案1】:return Point::all();
将返回一个数据数组,而不是一个点,因此您必须在 success
回调中遍历该数据:
...
success: function(data)
for (var i = 0; i < data.length; i++)
var r = data[i];
...
...
【讨论】:
感谢 Kestutis,你让我开心 完全没问题。在使用 API 时,我发现首先使用 Postman 对其进行测试非常有用,然后才在 JavaScript 中处理响应以上是关于在 jQuery $.ajax 中读取 Laravel JSON 响应的主要内容,如果未能解决你的问题,请参考以下文章
使用Jquery时无法读取数据库,Ajax提交表单而不刷新页面