使用数据类型为json的ajax


Using ajax with datatype json

$query = "SELECT Subjects FROM instructors";
$rows = mysqli_query($con,$query);
{
    if($rows)
    {
        $count = 0;
        while($row = mysqli_fetch_array($rows))
        {
            $id = 'Name'.strval($count);
            // array_push($results,$row);
            $results[] = array($id => $row['Subjects']);
            $count = $count + 1;
        }
        echo json_encode($results);
    }
    else
    {
        echo "Something wrong";
    }
}

此输出

[{"Name0":"lore"},{"Name1":"ipsum"}]

现在在JS中,我想获得这些名称。

$(document).ready(function(){
$.ajax({
 url: "get_subs.php",
 dataType :"JSON",
 success : function(data)
 {
    alert(data);
 }
    })
});

但这只打印

0 => [object Object]

我也试过

alert(data.Name0);

但这也提醒了同样的事情。我做错了什么?

数据是一个数组,因此您需要通过索引访问它:

alert(data[0].Name0);

试试JSON.stringify,看看它能输出什么。当你提醒像对象或数组这样的东西时,它会输出它,这很正常。

alert(JSON.stringify(data));