nodejs 将数据放入输入

nodejs put data in an input

我有一个带有输入的表单:

<label for="email">Email:</label>
<input class="form-control" name="email" id="email"  value="">

在我的 NodeJS 函数中:(我用一个 id 在我的数据库中搜索并恢复了他的电子邮件)

 models.User2.findOne({_id: idusersession})   
            .then(function (content) {

           var mail = content.email;
});

我想把这个变量邮件放在我的 HTML 页面中。因此,当 HTML 页面被调用时,数据会自动添加到我的输入中。

我试过了:

document.getElementByID("email").value = mail;

但是没有成功。显然,NodeJS 中不存在 document.getElementByID()

您应该使用 Node.js template engines 来实现此功能。根据每个请求,Node.js 将在服务器上从您的模板生成 HTML,并将其与来自 MongoDB 的所有值直接在 HTML 标签中或嵌入 JavaScript 代码,以便可以在浏览器中由 JavaScript 设置(您在示例中尝试执行的操作)。

这里是一个使用 EJS 模板的例子https://scotch.io/tutorials/use-ejs-to-template-your-node-application

另一种方法是使用 Node.js RESTful API 提供数据并使用 XMLHttpRequest

从您的 HTML 访问它