【问题标题】:Passing an array from node.js to another array in an HTML page将一个数组从 node.js 传递到 HTML 页面中的另一个数组
【发布时间】:2014-05-22 12:32:40
【问题描述】:
app.post('/reserveWorkspace', function(req, res) {

        connection.query( 'SELECT DeskName FROM desks WHERE stat = ?',["Booked"], function(err,     rows){
        if(err)
        {
            throw err;
        }
        else
        {
          try
           {

              res.render('workspaces.html',{myArray: rows.DeskName});
              for(i=0;i<rows.length;i++)
              {        
                console.log(rows[i].DeskName);
              }}
          catch (e)
           {
            console.log(e);
           }
        }
});

我有上面的 node.js 代码,我想要完成的是我想将所有选定的行从我的 DB 表传递到“myArray”,并将数组传递给 HTML 页面中的另一个 javascript 数组工作区.html。我可以成功地在控制台上显示它们,但我无法成功地将它们传递到 html 页面.....有什么建议吗?

这是 HTML 代码:

 <script type="text/javascript">
   function myFunction(){
      var bookedSeatss =  "<%= myArray%>";
      document.getElementById("test2").value = bookedSeatss[0];
    }
 </script>

【问题讨论】:

  • 服务器代码中的右括号是错误的,肯定会给你一个错误。
  • 我怀疑括号是否错误,因为 console.log(rows[i].DeskName) 可以正确打印出所有内容。 myArray 是我将 db 表中的所有数据转移到......
  • 那么你的问题他们错了......

标签: javascript html arrays node.js


【解决方案1】:

尝试将它们字符串化:

res.render('workspaces.html',{myArray: JSON.stringify(rows.DeskName)});

【讨论】:

  • 当我尝试这样做时,我得到了随机的字母作为我的输出.. 我的 HTML 页面中的代码是否正确?
  • 如果有错误,使用render的回调来打印:res.render('workspaces.html',{myArray: JSON.stringify(rows.DeskName)}, function(err, html) {console.log( err )});
  • 我使用了回调,显然它传递了一个 NULL 值
  • html 参数看起来没问题?你也可以打印出来。
  • html参数只在控制台打印出html代码
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-10-06
  • 2015-06-12
  • 1970-01-01
  • 2017-01-25
  • 1970-01-01
相关资源
最近更新 更多