[英]Parse JSON in jQuery error
這是我的上一個問題的后續內容,但已將其重點放在解決特定的jQuery問題上。
我目前正在嘗試將來自PHP / MySQL搜索的JSON結果解析為一個簡單的HTML表。 但是,使用搜索時,沒有數據返回到我的表中。 當我在Firebug中調試搜索頁面時,我收到了Ajax請求的響應,我的請求以以下正確的JSON字符串返回:
[{"ARTIST":"Coldplay","TRACKTITLE":"Fix You","PLAYLIST":"Rock"},{"ARTIST":"Katy Perry","TRACKTITLE":"Roar","PLAYLIST":"Pop"}]
我可以在jQuery文件中的哪個位置解析JSON,以將{}
數據的每個字符串附加到HTML表的一行中(以ARTIST,TRACKTITLE和PLAYLIST作為我的列標題)。 我不清楚我要去哪里,為什么我的JSON字符串未正確轉換為HTML表,所以以正確的方式解析此數據的任何指針都將有所幫助。
jQuery文件
$.post('ajax/name.php', {name: name}, function(data) {
var sentData=JSON.parse(data)
for(var i = 0; i < sentData.ARTIST.length; ++i)
var tr = $('<tr/>');
tr.append("<td>" + sentData.ARTIST + "</td>");
tr.append("<td>" + sentData.TRACKTITLE + "</td>");
tr.append("<td>" + sentData.PLAYLIST + "</td>");
$('#multiple').append(tr);
});
HTML提取
<table class="table hovered" id="multiple">
<thead>
<tr>
<th class="text-left">Artist</th>
<th class="text-left">Track Title</th>
<th class="text-left">Playlist</th>
</tr>
</thead>
</table>
更新資料
我添加了header('Content-Type: application/json');
到我的PHP文件中,現在Firebug正在顯示JSON標簽,這是個好消息。 但是我仍然無法將JSON解析到HTML表中。
您的數據是有效的JSON並且是數組,因此請使用索引來獲取數據。 所以你不需要JSON.parse
$.post('ajax/name.php', {
name: name
}, function (data) {
for (var i = 0; i < data.length; ++i)
var tr = $('<tr/>');
tr.append("<td>" + data[i].ARTIST + "</td>");
tr.append("<td>" + data[i].TRACKTITLE + "</td>");
tr.append("<td>" + data[i].PLAYLIST + "</td>");
$('#multiple').append(tr);
});
不確定是否有人感興趣或它是否有用,但是無論如何我都解決了這個問題-這是一個相當簡單的問題。
在for
行之后有一些括號{}
,在$('#multiple').append(tr);
線。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.