вставка данных из mongodb через node.js - PullRequest
0 голосов
/ 06 ноября 2019

Мне нужно вставить данные в mongodb через узел js. (+ edit) Вот мой код вставки

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 = req.body.mailbox;
    var newmail = {'sender':sender,'recipient':recipient,'title':title,'time':time,'content':content,'mailbox':mailbox};
    collection.insert(newmail, function(err,result) {
        if (err === null) {
            res.send("Successfully added!");
        } else res.send(err);
    })
})

(+ edit) Это мой HTML-код. Форма генерируется скриптом. Функция compose запускается при нажатии кнопки «compose»

function compose() {
  emailDIV.innerHTML = "<form name='compose' action='/composemail' method='post'> New Message";
  emailDIV.innerHTML += "<p>To: <input type='textbox' name='recipient'></p>";
  emailDIV.innerHTML += "<p>Subject: <input type='textbox' name='title'></p>";
  emailDIV.innerHTML += "<p><input type='textarea' name='content' class='textarea'></p>";
  emailDIV.innerHTML += "<input type='hidden' name='mailbox' value='"+nowBox+"'>";
  date = new Date();
  time = date.toTimeString().split(' ')[0]+" "+date.toDateString();
  emailDIV.innerHTML += "<input type='hidden' name='time' value='"+time+"'>";
  emailDIV.innerHTML += "<input type='submit' value='Send'> </form>";
}

Однако, если форма написана напрямую в HTML, она работает!

<div id="test">
  <form name='compose' 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' name='mailbox' value='Important'>
    <!--date = new Date();
    time = date.toTimeString().split(' ')[0]+" "+date.toDateString(); -->

    <input type='hidden' name='time' value='20:00:01 Wed Nov 06 2019'>
    <input type='submit' value='Send'> </form>
</div>

, но форма должна быть сгенерированатолько когда кнопка нажата. Что мне делать?

1 Ответ

0 голосов
/ 06 ноября 2019

нормально решается перемещением скрытого div. Спасибо вам всем за помощь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...