需要帮助环出使用 Ajax 和 Laravel 从数据库获取的 Json 数据响应的内容

Need Help Looping Out Content Of Json Data Response Fetched From DB In Using Ajax And Laravel

我有一个 table 的主题列表,每个主题都有自己的主题,所以我写了一个 ajax 脚本来获取每个主题的主题 "onclick"主题,使用主题 ID。

我尝试通过控制台记录来自我的控制器的 JSON 成功响应,我看到了查询的结果,所以我使用 Js 附加功能将数据附加到 div 我的 index.blade 但它返回的主题是:[object Object],[object Object]

Ajax 请求显示所选主题的主题 track_id 表示 subject_id

$( ".show-topics" ).click(function() {
    var track_id= $(this).data('id');
    var html ='';

    $.ajax({
        type: "GET",
        dataType: "json",
        url: 'showTopics',
        headers: {'X-CSRF-TOKEN': '{{ csrf_token() }}' },
        data: {'id': track_id},
        success: function(data)
        {
            // For loop statement to loop out the data```
            if(data.topics)
            {
                for(var key in data)
                {   
                    var value = data[key];
                    html+='<div>'+key+':'+value+'</div>'
                }
                $("#topic-data").append(html);
            }
        }
    });
});

在我的控制器中,我将此作为我的 showtopics 方法```

public function showTopics(Request $request)
{ 
    $topics = Topic::where('track_id', $request->id)->latest()->get();
    return response()->json(['topics' => $topics]);
}

div 追加这些数据:

<div id="topic-data">
</div>

当我 console.log(data.topics) 我懂了, (2) [{…}, {…}] 0: created_at: "2019-07-29 18:04:32" 持续时间:5 编号:7 标题:"My Porfolio Adesanya Folorunso" track_id: 44 updated_at: "2019-07-29 18:04:32"

1: created_at: "2019-07-29 18:04:11" 持续时间:2 编号:6 标题:"Adesanya Folorunso" track_id: 44 updated_at: "2019

我想显示主题->id,主题->标题和持续时间。 不是这个主题:[object Object],[object Object]

我假设您的数据如下所示。如果是这样,用我的替换你的循环代码...

var data = 
{
    "topics":
    [
        {
            "created_at":"2019-07-29 18:04:32",
            "duration":5,
            "id":7,
            "title":"My Porfolio Adesanya Folorunso",
            "track_id":44,
            "updated_at":"2019-07-29 18:04:32"
        },
        {
            "created_at":"2019-07-29 18:04:11",
            "duration":2,
            "id":6,
            "title":"Adesanya Folorunso",
            "track_id":44,
            "updated_at":"2019-07-30 19:04:21"
        }
    ]
};

if(data.topics)
{
  for(var i=0; i < data.topics.length; i++)
  {
    $("#topic-data").append( $("<div />").text(data.topics[i].created_at) );
    $("#topic-data").append( $("<div />").text(data.topics[i].duration) );
    $("#topic-data").append( $("<hr />") );
  }
}
         
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="topic-data">
</div>