如何在ejs模板中显示json数据?

时间:2015-08-08 04:59:06

标签: javascript node.js ejs

我在控制器文件中有一个json数据,我从API获取了这些数据,这样我就可以了     将从API获得的数据重定向到ejs文件,但是当我在body标签部分编写代码时     这个<% - JSON.stringify(jsonData)%>,它会显示整个JSON但是当     我在脚本标签下使用此语句我没有得到任何东西,但[对象对象]错误消息是出来的。

如何在脚本标记内使用此JSON数据来显示JSON数据中的每个键/值对?你能有人建议回答吗?

在控制器中:

res.render('display', {
  jsonData: storeJSONData
}); 

我为重定向模板编写了此代码。

3 个答案:

答案 0 :(得分:2)

不说话只看:P

我发送了这样的数据。



res.render('studentlist',{'studentlist' : result} );




然后我将这些数据显示在像这个婴儿的表格中:D



<table class="table table-inverse">
      <thead>
        <tr>
          <th>Name</th>
          <th>Email</th>
          <th>Username</th>

        </tr>
      </thead>

      <tbody>
        <% for(var i=0; i < studentlist.length; i++) { %>
       <tr>

         <td><%= studentlist[i].name %></td>
         <td><%= studentlist[i].email %></td>
         <td><%= studentlist[i].username %></td>


       </tr>
    <% } %>
      </tbody>

    </table>
&#13;
&#13;
&#13;

我希望能帮助你。我很确定 。 :) 非常感谢你

答案 1 :(得分:0)

请在您的HTML中尝试此操作,它应该有效:

var

这是因为您无法在EJS标记内使用JS,您需要将其渲染为from item in _context.entity1 .Include("childentity1.childentity2") .Include("childentity1.childentity3") where item.id == 1 select item; ,然后您可以使用它。

答案 2 :(得分:0)

尝试将render()更改为:

res.render('display', {
  jsonData: JSON.stringify(storeJSONData)
});

和您的模板:

<script type="text/javascript">
function codeAddress() {
  var data = <%- jsonData %>;
  document.write(data);
}
</script>