nodejs一次渲染多个页面

我有一个contact页面,可以把他们的contact detailsmessage 。 一旦他们把他们的信息,它被保存到mongodb collection 。 如果没有错误,我想清空联系表格,并显示一条popup消息,说谢谢。 现在,如果我使用

  app.post("/contact", function(req, res){ var name = req.body.name; var email = req.body.email; var phone = req.body.phone; var message = req.body.mess; var contact_message = new Contact({name:name,email:email,phn_no:phone,message:message}); contact_message.save(function (err) { if (err) { return err; } else { console.log("Contact details saved"); res.render("contact"); } }); 

上面的代码只是呈现相同的contact page ,没有谢谢你的消息。 如果我尝试创build一个新的ejs页面( 例如:thankyoupage ),并使用以下方式发送消息来呈现该页面:

 res.render("thankyoupage",{message: "thankyou"}); 

它只会呈现新的谢谢页面,并保持联系页面不受影响。 所以我在这种情况下不会有联系页面。 我想要的东西,这是两个混合物,我会显示一个popup窗口显示在背景上的联系页面上的空字段感谢您的消息。无论如何,我可以做到这一点? 任何build议/帮助/例如将不胜感激。

在您的联系页面中,您可以插入首次加载页面时运行的脚本。 该脚本检查是否在页面中设置了某个Javascriptvariables。 如果设置了该variables,那么该脚本将popup一个感谢消息。 如果未设置JavaScriptvariables,那么该脚本将不执行任何操作。

然后,在服务器上,当你渲染页面时,你传递一个属性来告诉它为JavaScriptvariables插入什么。 这样你的渲染操作就可以控制页面是否会popup消息。

您可以根据需要将其设置为function丰富。 例如,您可以传递渲染,您希望页面显示的确切消息,模板可以将该消息放入页面中的脚本将显示的JavaScriptvariables中。

同样,popup窗口可以像你想要的一样丰富。 它可能是整个div占据整个页面,而页面的联系人部分暂时隐藏,或者您可以在常规联系页面上使用alert()prompt()消息框。