如何使用节点js将数组数据从js发送到html

时间:2017-05-03 15:23:47

标签: html json node.js

我的.js文件包含数组json数据,如下所示

array1 =[{"id":"100","name":"abc","group":"123"} {"id":"102","name":"def","group":"456"} {"id":"103","name":"ghi","group":"789"}]

我将数据发送到html,如下所示

app.post('/lms',function(req,res){
res.render('indextest',{data:array1});});

现在我可以在indextest.html中访问上面的数据,如下所示

<%= data[0].id%>

但我的要求是我想在for循环中访问这些数据

for(i=0;i<len;i++){
var id= <%= data[i].id%>;
document.write("<input type=\"checkbox\" name=\"bedID\" value=\""+id+"\">");}

这里我得到了&#34;我&#34;未定义,我通过如下

var id= '<%= data['+i+'].id%>';

我的id未定义

可以帮助我以任何其他方式访问循环中的数据或修复上述问题,谢谢

1 个答案:

答案 0 :(得分:1)

请参阅What is the difference between client-side and server-side programming?

浏览器端JS中的变量无法访问节点端JS中的变量,反之亦然。

您可以将数组转换为JSON文本,然后将JavaScript编写到将JSON文本视为JavaScript数组文字的页面中。然后你可以完全处理客户端。

一个更好的选择,因为你的浏览器端JS除了生成HTML作为一次性协议之外什么也不做,就是用Node而不是浏览器端JS生成HTML。

相关问题