是关于行动=" "在html表单中产生差异,或app.post(" /..",...)产生差异?
app.post('/translate', function (req, res) { }
我尝试过动作=" /翻译"所以它会像app.post一样,但它仍然没有用。
在这里你可以看到相互app.post但在两个动作中,对于同一页面上的表单编号1和表单编号2。
app.post('/contact', function (req, res) {
//for both forms
var nodemailer = require('nodemailer');
var transporter = nodemailer.createTransport({
service: 'gmail',
auth: {
user: 'my_email@gmail.com',
pass: 'my_password'
}
});
//for form number1
var name1=req.body.name;
var email1=req.body.email;
var telephone1=req.body.phone;
var subject1=req.body.subject;
var message1=req.body.message;
transporter.sendMail({
from: email1,
to: 'my_email@gmail.com',
subject: subject1 +"sender:"+name1,
text: message1 +"phone number:"+telephone1+"email:"+email1
});
}
//for form number 2
var name2=req.body.Tname;
var email2=req.body.Temail;
var telephone2=req.body.Tphone;
transporter.sendMail({
from: email2,
to: 'my_email@gmail.com',
subject: "contact "+"sender:"+name2,
text: "phone:"+telephone2+"email:"+email2
});
res.redirect('/');
});
答案 0 :(得分:0)
我认为你应该发出两个单独的AJAX请求,发送两组具有相同名称的数据(摆脱T ****并在服务器端替换为****),然后检查您是否已经发送了主题和正文,并根据它做了您需要的工作。通过这种方式,您可以获得更少的代码并且它可以正常工作。