无法在客户端html上打印json响应

时间:2019-06-17 10:43:00

标签: jquery node.js json ajax

我正在使用ajax从后端检索数据。我有一个mysql表。我想将员工姓名打印到客户端HTML。在ajax请求中,我得到一个JSON对象作为响应,但是我无法从请求中打印数据并将其插入到html标记中。我想在<div>容器中打印员工姓名。

$.ajax({
  type: 'POST',
  dataType: 'json',
  url: 'http://localhost:3000/endpoint',                        
  success: function(response) {
    console.log('success');
    console.log(response.data[0].empid);
    $('#container').html("<h1>"+response.data[0].empname+"</h1>");
  }
});
</script>
</head>
<body>
  <div id="select_div"><input type="submit" name="submit" id="submitbut" /></div> 
  <div class="container"></div>   
</body>

2 个答案:

答案 0 :(得分:0)

执行app.get('/', function(req, res){ res.sendFile(__dirname + '/socket.html') });时,您正在选择一个 id 为“容器”的元素,但是没有这样的元素。相反,您的容器的 class $('#container')。因此,可以使用container按其类选择容器,或者在HTML中为其指定ID $('.container')

答案 1 :(得分:-1)

 $('#container').html("<h1>"+response.data[0].empname+"</h1>");

以上代码可以替换为以下代码行

var header = document.createElement("h1");
header.innerHTML = response.data[0].empname;
document.getElementById("#container").appendChild(header);