未捕获的SyntaxError:位于1的JSON中的意外标记o

时间:2016-05-30 08:09:02

标签: javascript laravel google-maps-api-3

我有一个关于将变量从控制器传递到javascript的问题

这是我的控制器

public function index()
{
    $tourplace = Tourism::all();

    return view('spatialInfo')->with('tourplace',$tourplace);
}

这是我的javascript

$(document).ready(function(){
        var lokasi = [];
        var test = document.getElementsByName('kabupaten');

        var jsondata = JSON.parse({!! $tourplace !!});
        var htmlURL = '{{URL::to('/tourismplace/id/')}}';
        $.get(jsondata).success(function(data){
            var jumlahData = data.length;
            for(var i=0;i<jumlahData;i++){
                lokasi.push({
                    lat : data[i].latitude,
                    lon : data[i].longitude,
                    zoom : 15,
                    title : data[i].nama,
                    html : "<a href='"+htmlURL+"/"+data[i].id +"'>"+data[i].nama+"</a>",
                    icon: 'http://maps.google.com/mapfiles/ms/micons/red-dot.png', // custom icon
                    animation: google.maps.Animation.DROP
                });
    }
});

1 个答案:

答案 0 :(得分:0)

不要尝试使用JSON.parse()解析JSON,而是使用以下代码:

var jsondata = {!! $tourplace->toJson() !!};

->toJson()会将您的集合转换为JSON,而无需再次解析它。