Как получить дату, что внутри массива, используя jQuery? - PullRequest
0 голосов
/ 18 мая 2019

Я пытался получить значение даты из JSON. Но значение даты находится внутри массива.

код как показано ниже

get.php

<?php
    include_once('connection.php');

    $staff_number   = $_POST['staff_number'];

    $query      = "SELECT * FROM TABLE.VW_LIST WHERE STAFFNUMBER=?";  
    $stmt       = sqlsrv_prepare( $connection, $query, array(&$staff_number));
    $result     = sqlsrv_execute($stmt);
    $row        = sqlsrv_fetch_array($stmt);    
    echo json_encode($row);
?>

Вывод, как показано ниже

{
    0: "1", 
    1: "test", 
    2: "name", 
    3: "001", 
    4: "12345", 
    5: {
            date: "2019-05-18 00:00:00.000000", timezone_type: 3, timezone: "Asia/Singapore"\
       }, 
    6: "ABC123"
}

Проблема в том, что когда я пытался отобразить его внутри ajax, в интерфейсе html отображается [объект, объект] .

В PHP-коде я знаю, как это сделать

date.php

$displaydate = $row['DISPLAYDATE'];
foreach($displaydate as $date)
{
}
$old = date('Y-m-d H:i:s', strtotime($displaydate['date']));
$output = new DateTime($old);
echo $output->format('d M Y');

Но в Ajax / jQuery я не уверен, как это сделать. Вот мой код

display.php

<script>
    $(document).ready(function(){       
        var staff_number = "";
        $('#pick').change(function(){               
            staff_number = $(this).val();
            $.ajax({
                url: "get.php",
                type: "POST",
                dataType: "json",
                data: {"staff_number": staff_number},
                success: function(data)
                {
                    var ar = data;  
                    var displaydate     = ar[5];
                    $('#displaydate').val(displaydate); 
                },
                error: function(error){
                     console.log("Error:");
                     console.log(error);
                }
            });
        });
    });
</script>

Как я могу получить значение даты?

Спасибо заранее.

1 Ответ

0 голосов
/ 18 мая 2019

Вы также должны вызвать свойство с именем date

 var displaydate = ar[5].date;
...