Заранее всем спасибо! Действительно> <</p>
В DIV есть форма для составления электронного письма. Пользователи вводят получателя, название и содержание и нажимают кнопку «Отправить». Форма может быть отправлена.
в формате html:
<form id='formid' name='compose1' action='/composemail' method='post'>
New Message
<p>To: <input type='textbox' name='recipient'></p>
<p>Subject: <input type='textbox' name='title'></p>
<p><input type='textarea' name='content' class='textarea'></p>
<input type='hidden' id='formTime' name='time' value='20:00:01 Wed Nov 06 2019'>
<input type='submit' id="formSubmit" value='Send'>
</form>
После нажатия кнопки отправить данные будут вставлены в базу данных Монго. Данные могут быть успешно добавлены. в app.js:
app.post('/composemail', express.urlencoded({extended:true}), function(req,res) {
var db = req.db;
var collection = db.get('emailList');
var sender = "abc@mail.com";
var recipient = req.body.recipient;
var title = req.body.title;
var time = req.body.time;
var content = req.body.content;
var mailbox = "Sent";
var newmail = {'sender':sender,'recipient':recipient,'title':title,'time':time,'content':content,'mailbox':mailbox};
collection.insert(newmail, function(err,result) {
if (err === null) {
console.log("Successfully added!");
res.json({success: true}); // <-problem here
} else res.send(err);
})
})
, в другом файле вызывается script.js, есть вызов функции show
function show() {
//basically a XMLHttpRequest to receive the email list from the database
}
Проблема заключается в ответе после вставки данных. Я хочу, чтобы он оставался на той же странице и запускал функцию show () в script.js после отправки формы.
Я ищу в Интернете и нахожу это полезным: res.json ({success:правда});но я хочу избежать использования ajax, поскольку это действительно сложно ... могу ли я реализовать, если успех верен, затем запустить функцию show () в простой форме в html? я попробовал:
<form id='formid' name='compose1' action='/composemail' method='post' success='show(variable)'>
кажется, что он не работает ... или если мне действительно нужно использовать ajax, как я могу это сделать? я действительно понятия не имею об этом ...
Большое спасибо!