nodejs一次渲染多个页面
我有一个contact
页面,可以把他们的contact details
和message
。 一旦他们把他们的信息,它被保存到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()
消息框。