我有两个问题。在PHP中,我在this post的答案中使用fetch_assoc
,它返回一个对象数组。然后我的JS是:
var result = JSON.parse(response),
output = "";
for (var i = 0; i < result.length; i++){
var obj = result[i];
output += "<div class='mysql_row'>";
for (key in obj){
output += "<div class='mysql_col'>" + obj.key. + "</div>";
}
output += "</div>";
}
document.getElementById('main_grid').innerHTML = output;
我在另一篇文章中读到了使用&#34; key&#34;应该给我价值,但即使登录到控制台给我一个字符串数组,我也得到undefined
。
我对PHP不太熟悉,是否有更优雅的echo
方式并显示数据?
我的PHP代码:
$load = $connect->query("SELECT * FROM `user` WHERE `role` = 2");
$emp_proj = array();
while ($row = $load->fetch_assoc()){
$emp_proj[] = $row;
};
echo json_encode($emp_proj);
答案 0 :(得分:1)
obj.key
不是obj[key]
,而是var result = JSON.parse(response),
output = "";
for (var i = 0; i < result.length; i++){
var obj = result[i];
output += "<div class='mysql_row'>";
for (key in obj){
output += "<div class='mysql_col'>" + obj[key] + "</div>";
}
output += "</div>";
}
document.getElementById('main_grid').innerHTML = output;
:
obj.key
obj
正在查看对象"key"
并检索其键为字符串obj[key]
的属性。 key
检索名称为变量var obj = {
key: 5,
username: "test"
};
var key = "username";
console.log(obj.key); // 5
console.log(obj[key]); // "test"
console.log(obj.username); // "test"
console.log(obj["username"]); // "test"
的值的属性。
{{1}}