作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
while($row = $result->fetch_array()) {
array_push($json_result,
array('crewID'=>$row[0],
'FName'=>$row[1],
'LName'=>$row[2],
'smBook'=>$row[3],
'contactNo'=>$row[4],
'email'=>$row[5],
'address'=>$row[6],
'birthday'=>$row[7],
'emergencyCN'=>$row[8],
'emergencyPerson'=>$row[9],
'loyaltyCN'=>$row[10]));
}
echo json_encode(array($json_result),JSON_PRETTY_PRINT);
这是我的 jQuery 代码:
function displayGuestData(guestID) {
$.ajax({
url:"functions/f_get_guests_json.php",
method:"POST",
data:{guestID:guestID},
dataType: "json",
success:function(response) {
alert(response.FName);
}
});
}
现在我的问题是,当我警告任何 JSON 数据(例如 FName
)时,我收到未定义的错误。可能是什么问题呢?我是 jQuery 中的 JSON 新手。我什至在我的 PHP 中有这样的代码:
header("Content-Type: application/json", true);
编辑:
这是 JSON:
[
{
"crewID": "4",
"FName": "Abc Abc",
"LName": "Abc",
"smBook": "ABC123",
"contactNo": "12312312",
"email": "asdasd@yahoo.com",
"address": "56 Sasdasd Asds",
"birthday": "1995-06-11",
"emergencyCN": "12312312",
"emergencyPerson": "asdasdasd",
"loyaltyCN": "ABC123"
}
]
最佳答案
我认为问题就在这里;
success: function(response){
alert(response.FName);
}
据我所知,您正在返回一个包含您的结果的数组。因此,也许您应该尝试将上面的内容更改为以下内容;
success: function(response){
alert(response[0].FName);
}
这将访问数组中的第一个结果,然后继续访问并警告其 FName
属性的内容。
使用 console.log(response)
是查看您处理的完整对象的好方法,因此可以了解如何使用它。
由于您提供了输出 json,因此您似乎有一个包含结果数组的数组。
如果您使用 console.log
,您将能够清楚地看到这一点,但您需要 response[0][0].FName
来穿透两个数组.
关于javascript - 无法获取从 PHP 到 $.ajax 的 JSON 回显,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46067130/
我是一名优秀的程序员,十分优秀!