Javascript 控制器的Json值在视图中使用时出错,Laravel 5.6
我无法将从控制器获得的Json值转换为正确的javascript可读值 这是我的控制器Javascript 控制器的Json值在视图中使用时出错,Laravel 5.6,javascript,arrays,json,laravel,Javascript,Arrays,Json,Laravel,我无法将从控制器获得的Json值转换为正确的javascript可读值 这是我的控制器 $room = Room:: select('id', 'name', 'capacity', 'status') ->get(); $this->rooms = json_encode($room);; return view('admin.rooms.index', $this->data); 在视图中,{!!$room!!}
$room = Room::
select('id', 'name', 'capacity', 'status')
->get();
$this->rooms = json_encode($room);;
return view('admin.rooms.index', $this->data);
在视图中,{!!$room!!}给出
[
{“id”:1,“name”:“room1”,“capacity”:4,“status”:“dirty”},{“id”:2,“name”:“room2”,“capacity”:5,“status”:“clean”},{“id”:3,“name”:“room3”,“capacity”:5,“status”:“clean”}
]
所以我得到了我需要的json值
当我在脚本中使用{!!$room!!}时
function loadResources() {
$.post( "{!!$rooms!!}",
{ capacity: $("#filter").val() },
function(data) {
dp.resources = data;
dp.update();
});
}
参数列表后未捕获的语法错误(缺少)
这就是我得到的错误
如果我创建一个文件并将json值放入一个文件中
function loadResources() {
$.post( "room.json" ,
{ capacity: $("#filter").val() },
function(data) {
dp.resources = data;
dp.update();
});
}
一切正常
我尝试了JSON.parse(),以使值javascript可读,但失败了
如何在javascript代码中使用该json值?不要对结果集进行json编码 将整个对象传递到视图,如下所示:
$room = Room::
select('id', 'name', 'capacity', 'status')
->get();
return view('admin.rooms.index', $room);
然后,在视图中,您可以从上述传递的数据中检索值:
{{$room->id}}
尝试在视图(即javascript部分)中对rooms数组进行编码。然后将其传递给loadResources函数。在loadResources函数中尝试$.post(json_decode({!!$rooms!!})错误..未捕获引用错误:未定义json_decode..当我查找时,我发现“json_decode是PHP函数,不能在JS中使用json_decode”@stoneshak,你还在寻找解决方案吗?不是真的。我决定使用其他解决方案。如果你找到了解决方案或解决方法,你也可以发布答案并接受。:)因此,如果其他人正在寻找答案,你可以有一个答案。İ知道如何从该数据中获取值。。你真的读过这个问题吗?