【发布时间】:2020-12-07 14:59:05
【问题描述】:
我正在尝试做一件简单的事情。我有一个网站,我希望人们能够发送一些反馈并警告我,因为我有一个“通知所有者”按钮,它显示一个表单,并且在提交时应该执行一个 python 脚本,向自己发送一封包含他们信息的电子邮件填满。
这是我的表单代码(index.html - 在客户端创建)
<script>
async function notifyOwner() {
await fetch("api/notify", { method: "post" }).catch(console.log);
}
</script>
<div class="form-popup" id="myForm">
<form class="form-container" name="form-owner">
<h1>Notify Owner</h1>
<label><b>Name</b></label>
<input id="name" style="width:90%" type="text" placeholder="Enter your name$
<label><b>Message</b></label>
<input id="context" style="width:90%" type="text" placeholder="Enter Reason$
<button type="submit" class="btn" onclick="notifyOwner()">Submit</button>
<button type="button" class="btn cancel" onclick="closeForm()">Close</butto$
</form>
</div>
这是我的服务器端处理
app.post("/api/notify", async (req, res) => {
try{
var subject = "teste";
var body = "ok";
child_process.execSync('python3 sendEmail.py ' + subject + " " + body);
}catch(error){
console.error(error);
}
});
我应该怎么做才能用 id="name" 中的值替换 var 主题并用 id="context" 中的值替换 var 主体?
【问题讨论】:
-
我可以建议使用 nodejs 客户端发送电子邮件吗?从 nodeJS 应用程序调用 python 脚本,只是为了发送一封电子邮件。有很多可用的 nodejs 电子邮件库。
-
您是在问如何在 JavaScript 中获取输入值吗?这回答了你的问题了吗? stackoverflow.com/questions/11563638/…
-
我一定会试一试的!即使我已经搜索过了,也许我对 nodejs 的了解还不够,无法正确搜索它:D
-
@isherwood 我认为 document.getElementById 不起作用,因为服务器没有部署表单,表单是在客户端完成的,我在服务器端调用脚本。我对如何将数据从 html 传输到服务器更感兴趣
-
NodeJS 只是 JavaScript。拓宽研究范围。
标签: javascript node.js forms