javascript - 无法在html表格中显示json数组

标签 javascript jquery json ajax

我正在使用 php 脚本生成 json 数组。 json 数组由 jquery ajax 脚本检索,然后尝试读取它并将其嵌入到 html 表中。但是,我陷入困境,因为它不断在表中生成“未定义”数据。我想在ajax返回成功后在我的表中显示json数组的信息。请帮忙...

JSON 数组格式

[{"fullname":"Frank Robsinga","gender":"Male","email":"n\/a","phone":"n\/a","status":"1"}]

JavaScript

<script>
$("#lookup").click(function() {

var key = $("#search").val();

$.ajax({
    type : 'POST',
    url : 'scripts/search-user-script.php',
    data : {
        key : key
    },
    success : function(obj) {

        $("#usersdata").html("");
        for (var i = 0; i < obj.length; i++) {
            var tr = "<tr>";
            var td0 = "<td>" + (i + 1) + "</td>";
            var td1 = "<td>" + obj[i]["fullname"] + "</td>";
            var td2 = "<td>" + obj[i]["gender"] + "</td>";
            var td3 = "<td>" + obj[i]["email"] + "</td>";
            var td4 = "<td>" + obj[i]["phone"] + "</td>";
            var td5 = "<td>" + obj[i]["status"] + "</td></tr>";
            $("#usersdata").append(tr + td0 + td1 + td2 + td3 + td4 + td5);

        }

    }
});
// .ajax
});
</script>

结果截图 enter image description here

最佳答案

您的 ajax 调用返回一个字符串。使用前需要将其解析为Object

for 循环之前尝试 obj = JSON.parse(obj)

喜欢:

function(obj) {
  obj = JSON.parse(obj); // Add this line
  $("#usersdata").html("");
  for (var i = 0; i < obj.length; i++) {
    var tr = "<tr>";
    var td0 = "<td>" + (i + 1) + "</td>";
    var td1 = "<td>" + obj[i]["fullname"] + "</td>";
    var td2 = "<td>" + obj[i]["gender"] + "</td>";
    var td3 = "<td>" + obj[i]["email"] + "</td>";
    var td4 = "<td>" + obj[i]["phone"] + "</td>";
    var td5 = "<td>" + obj[i]["status"] + "</td></tr>";
    $("#usersdata").append(tr + td0 + td1 + td2 + td3 + td4 + td5);

  }

}

关于javascript - 无法在html表格中显示json数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37136562/

相关文章:

javascript - 当初始状态和最终状态相同时,不会触发 transitionend

javascript - 突出显示滚动窗口中当前显示的所有 div

javascript - 如何简化这个重复的jquery?

jquery - 在\t、冒号和\t 上对齐文本

java - Android - 显示来自 MySQL 的数据

Java Jackson JSON 解析为 Map<String, String>

javascript - 为什么对象方法不返回值?

javascript - JQuery 中的无限循环?

javascript - 如何去除打印预览中的溢出?

ios - 快速调用方法(方法在下一行之前没有完成)