我試圖操縱我的AJAX響應。如何將AJAX響應轉換爲JSON?
我需要創建一個foreach與搜索results.This是我的代碼創建卡:
$('#OrdAlf').on("click", function(){
var value = $(this).data("value");
jQuery.ajax({
url: theme_url + '/helpers/filter_index.php',
type: 'POST',
dataType: "text",
data: {ordFilter:value}
}).done(function(data){
//console.log();
var json = JSON.stringify(data);
alert(json);
var htmlLoad = '<div class="draggable ui-widget-content card-crm" id="card-crm"><div class="avatar-client"></div><div class="info-content"><p class="name">'+data+'</p><p class="info-contact"></p><p class="when-enter"><span class="ico-enter"></span></p></div><div class="icons-top"></div><div class="clear"></div></div></b>';
var ajax_load = "<img src='https://i.imgur.com/FpzX0YO.gif' />";
$("#card-container").html(htmlLoad);
});
});
如何組織這個數據,這個循環會發生什麼?
我嘗試警報「alert(json [0]);」這是結果:
這是我的PHP頁面:
<?php
require 'conexao.php';
if($_POST['ordFilter'] == 200){
$selectNegociacaoASC = 'SELECT * FROM wp_crm_contacts WHERE user_id = '.$userId.' AND status is NULL ORDER BY name ASC;';
$stmtNegociacaoASC = $db->prepare($selectNegociacaoASC);
$response = $stmtNegociacaoASC->execute();
$resultNegociacaoASC = $stmtNegociacaoASC->fetchAll(PDO::FETCH_ASSOC);
$countNegociacaoASC = count($resultNegociacaoASC);
for($y = 0;$y < $countNegociacaoASC; $y++){
$name[$y] = $resultNegociacaoASC[$y]['name'];
if($name != ""){
echo json_encode($name);
}
}
};
誰是給該響應的數據?如果他們在你的控制範圍內,我只是在發送之前修復它。這些數據是一團糟。它似乎只是一大堆沒有父容器的列表。 Idk你會如何輕鬆地創建一個有效的JSON。 – Carcigenicate
嗨@Carcigenicate,我編輯了這個問題。 –
你不能回聲多次。你發送的內容不是一個有效的結構。在服務器端循環中創建你的數組並在循環完成後發送該數組 – charlietfl