只在ajax返回时显示数组的一些数据

时间:2018-03-29 13:40:01

标签: javascript php jquery json ajax

有没有办法只显示数组中的[reason]而不是数据中的所有内容?有人说我需要使用JSON,但我尝试使用stringify()contentType: "application/json",但然后success: function(data)返回我的整个HTML而不是数组。

我的问题是如何在$('#testajax').html(data);中仅显示[reason]而不是数据中的所有内容? console.log的console.log

的script.js

$(document).ready(function(){

var date = "";
var begin = "";
var tijdsduur = "";
var aantal = "";


$('#datum').change(function() {
  date = $("#datum").val();
  console.log(date);
});
$('#beginTijd').change(function(){
    begin =( $(this).val() ); 
    console.log(begin);      
});
$('#Tijdsduur').change(function(){
    tijdsduur =( $(this).val() ); 
    console.log(tijdsduur);      
});
$('#aantalSloepen').change(function() {
aantal = ($(this).val());
console.log(aantal);
  $.ajax({
      type: "POST",
      url: "index.php",
      contentType: "application/x-www-form-urlencoded; charset=UTF-8",
      data: {
          date: date,
          begin: begin,
          eind: tijdsduur,
          quantity: aantal
      },
      success: function(data) {
          $('#testajax').html(data);
          console.log(data);
      }
  });
});
});

更新 index.php

        <?php
    $date = "";
    $begin = "";
    $tijdsduur = "";
    $aantal = "";
    if (isset($_POST['date']) && isset($_POST['quantity'])) {
      if (isset($_POST['date'])) {
            print_r($_POST);
            echo "Yes, mail is set";
            $date = $_POST['date'];
            $begin = $_POST['begin'];
            $tijdsduur = $_POST['eind'];
            $aantal = $_POST['quantity'];
            $eind = $begin + $tijdsduur;
            $startTijd = "$date " . $begin;
            $eindTijd = "$date " . $eind . ":00";
            echo $date . "<br>";
            echo "$startTijd". "<br>";
            echo "$eindTijd". "<br>";
            echo $aantal. "<br>";
            $canmakereservation = "https://www.planyo.com/rest/?method=can_make_reservation&api_key=YOURKEY&resource_id=110556&start_time=$startTijd&end_time=$eindTijd&quantity=$aantal";
                    $cleancanmakereservation = preg_replace("/ /", "%20", $canmakereservation);
                    $reservationavailable = file_get_contents("$cleancanmakereservation");
                    $reservationAvailable = json_decode($reservationavailable, true);
                    echo "$cleancanmakereservation";
                    echo json_encode($reservationAvailable);
        }
        else {
            echo "No, mail is not set";
      }
      exit;
    }
    ?>

console.log 的console.log(日期[0]。原因);

console.log 的console.log(日期);

1 个答案:

答案 0 :(得分:1)

json_encode

返回index.php中的数据

然后在你的ajax成功函数中通过

获取它
  success: function(data) {
      console.log(data.reason); //if its comming then add it to your html.
      $('#testajax').html(data.reason);
  }