我试图操纵我的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