使用ejs组件将数据从js发送到html
Sending data from js to html with ejs components
我刚刚开始学习JS和node.JS。我一直在尝试通过ejs组件将数据从MySQL中的DB发送到html。我尝试使用ejs.render(data,{data:something_from_DB});发送由"数据"标识的提取信息(something_from_DB)。然后,我在html中的ejs代码中使用了标识符"data",但它会抱怨html文件中没有定义数据。
这是js代码。
var mysql = require('mysql');
var fs = require('fs');
var http = require('http');
var express = require('express');
var ejs = require('ejs');
var app = express();
app.use(app.router);
var client = mysql.createConnection({
user: 'username',
password: 'password',
database: 'database_name'
});
app.get('/', function(req, res){
fs.readFile('list.html', 'utf8', function(error, data){
client.query('SELECT * FROM test_table', function(error, results){
console.log(results);
res.send(ejs.render(data), {data: results});
});
});
});
这是list.html 中的部分
<% data.forEach(function(item, index){ %>
<tr>
<td><%= item.id %></td>
<td><%= item.name %></td>
<td><%= item.phone_no %></td>
</tr>
<% }); %>
当我打印结果时,我得到:
[ RowDataPacket { id: 1, name: 'PETER', phone_no: '0100000000' } ]
看起来不错。我想用"数据"来传递这一点,但我认为这不会发生。
如果我使用断章取义的词语,请务必纠正。
我认为这是一个简单的错误。试试这个。
res.render('ejs file name',{data: results,});
相关文章:
- 旋转按钮[HTML][JS]
- 在ajax中发送html+JS
- 使用服务器上的HTML/js在网页上显示图像
- 为什么我从浏览器修改html/js时会多次发送ajax请求
- HTML/JS github页面项目没有't在使用firefox运行时加载图像或声音
- 当按下箭头键时,我的图像以一种奇怪的方式跳跃(HTML+JS)
- Html+js+css的打包程序
- 使用Sails.JS为静态HTML/JS应用程序提供身份验证
- HTML/JS表单已提交两次
- Heroku类型的简单HTML/JS应用程序托管
- HTML JS在DIV中附加随机图像
- 如何将从GWT编译的JS添加/访问到另一个外部HTML / JS项目中
- 如何从我的机器提供HTML + JS + CSS网络应用程序,以便其他人可以查看它
- HTML + JS:设置文本区域内容样式的最佳方式
- 如何在html / JS中展开或关闭内容 - 始终分配给不同的id
- HTML/JS 如何输入文本并使其显示在屏幕上
- 从导入的 HTML/JS 文件中提取变量
- 我们怎么知道消除HTML/JS/CSS文件中的空白可以缩短页面加载时间呢
- "捆绑;仅适用于HTML/JS的解决方案
- 是否覆盖网站上文本输入区域的默认移动设备键盘?(HTML/JS/jQuery)