如何将AJAX响应转换为JSON?

时间:2017-10-11 12:29:13

标签: javascript jquery ajax

我试图操纵我的AJAX响应。

enter image description here

我需要创建一个foreach来创建带有搜索结果的卡片。这是我的代码:

$('#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);
  });
});

如何组织此循环的数据呢?

我尝试提醒&#34;警告(json [0]);&#34;这就是结果:

enter image description here

这是我的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);
    }
  }
};

1 个答案:

答案 0 :(得分:0)

PHP: 在这里我将你的名字对象存储到returnarray数组变量然后我只是将输出作为json返回。

$returnarray= array();
for($y = 0;$y < $countNegociacaoASC; $y++){
$name[$y] =  $resultNegociacaoASC[$y]['name'];
if($name != ""){
  $returnarray[]=$name;//storing name object into array
}
echo json_encode($returnarray);

在JQuery中 - 我只是将json转换为javascript对象并安慰它

jQuery.ajax({
url: theme_url + '/helpers/filter_index.php',
type: 'POST',
dataType: "text",
data: {ordFilter:value}
}).done(function(data){
var json = JSON.stringify(data);
console.log(json) // You can get the object now 
}

试试这个让我知道你的意见