javascript - 'jquery' 'aja' x 从 laravel Controller 获取数据时引发解析器错误

标签 javascript php jquery ajax laravel

我正在尝试使用“jquery”ajax 从 laravel Controller 获取数据。但是,我遇到了parsererror。根据 laravel 文档,如果我们使用 response()->json(data),它会自动设置 header Content-Type= 'application/json',并且我也尝试在ajax端设置相同的 header ,但没有区别。我也尝试过

        contentType:'application/json',
        dataType: "json",
        accept:'application/json',

但它们都不起作用。这是我的代码设置:

   app.js

 var initlides = function () {
    return $.ajax({
        url: _url,
        contentType:'application/json',
        dataType: "json",
        accept:'application/json',
        success: function (data) {
          console.log(data)

        },
        error: function (textStatus, errorThrown) {
            console.log(textStatus, errorThrown)
        }
    });
};



controller.php 

 public function index()
{
    echo $section;
    $carousels= array();
    $carousel = Carousel::where('section_name', 'intro')->get();
    return response()->json($carousel);
}

我搜索了其他类似的问题,但没有一个有帮助。请帮忙。

最佳答案

response()->json()仅接受数组,这就是您收到错误的原因,您必须使用 Collection::toArray 方法才能将集合转换为数组:

$carousel = Carousel::where('section_name', 'intro')->get()->toArray();
return response()->json($carousel);

或者只需这样做:

$carousel = Carousel::where('section_name', 'intro')->get();
return $carousel->toArray();

关于javascript - 'jquery' 'aja' x 从 laravel Controller 获取数据时引发解析器错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48026128/

相关文章:

php - 链接不适用于 jquery

javascript - 根据相应的类将值迭代到不同的元素中

javascript - getElementById 在节点上不起作用

PHP 无法在我的服务器上正确下载 apk 文件

javascript - 在 Firebug 的脚本选项卡内调试 JS

php - 时间戳到正常日期格式并使用 PHP 进行反向转换

javascript - 动态创建的元素上的事件绑定(bind)?

jquery - 我可以定义自己的自定义 HTML 元素以用于 css 和 js 吗?

javascript - CSS 网格在下一个页面 View 中被破坏

javascript - SVG foreignObject 在 Safari 上无法正常工作