如何从json响应中获取数据

时间:2018-10-14 06:08:17

标签: json laravel access

目标网址

   function purchasetable(Request $request){
   $material = $request->get('query');
   $unitprice = DB::table('materials')->where('name',$material)->select('unit_price','id')->get();
echo json_encode($unitprice);

}

视图上的代码段

 $('#add-btn').click(function() {
    var material = $('select[name="material"]').val();
    var quantity = $('input[name="qty"]').val();
    var _token = $('input[name="_token"]').val();
    alert(material);
    $.ajax({
        url: "{{ route('autocomplete.purchasetable') }}",
        method: "POST",
        data: {
            query: material,
            _token: _token
        },
        success: function(data) {
            //console.log(data);
            data = JSON.parse(data);
            console.log(data);
        }
    });
});

控制台输出 console output

我想在我的视图中访问“ id”和“ unit_price”,该如何解释。 谢谢

2 个答案:

答案 0 :(得分:1)

当您使用jQuery时,您的响应也是一个数组,那么您可以像这样迭代该数组

$.each(data, function(key, value) {
   console.log(value.id, value.unit_price);
});

答案 1 :(得分:0)

您的输出似乎是一个对象数组。 可以使用“ []”表示法访问任何数组值。 由于数组包含对象,因此可以使用“。”运算符对其进行访问 因此
data[0].iddata[0].value将为您提供理想的结果。 [0]->表示数组位置,在这种情况下为0, .id->表示要访问的对象名称。