【问题标题】:HTML form submission(POST req) to the server should return a dynamic HTML向服务器提交 HTML 表单(POST req)应返回动态 HTML
【发布时间】:2020-05-03 16:19:53
【问题描述】:

我如何让服务器端(在 NodeJS 和 Express 中)在收到 post 请求后返回一个新的 HTML 页面?

  • 假设 HTML 页面有几个字段,每个字段都需要在 HTML 页面本身中检查(可以使用 Javascript 完成)。
  • 但是在提交表单之后,服务器端会进行一些繁重的计算(假设完成它需要 5 秒,也许更多)。
  • 然后服务器端返回一个新的 HTML 页面,该页面分别突出显示所有输入字段的结果。
  • 我不能使用静态 HTML 页面返回,因为可能有很多结果,我希望 HTML 页面(由服务器发送)根据服务器完成的计算动态调整。

q1。如何在服务器端创建这个动态 HTML 页面?

q2。当服务器端执行计算时,如何向用户显示加载屏幕?

如果我错了,请纠正我

a1。我相信我可以使用 EJS/JADE/PUG/HANDLEBARS 创建某种静态 HTML 模板,然后传递计算结果并让 JS 脚本(在 HTML 中)处理它的显示方式。

a2。我现在不知道。

【问题讨论】:

  • 如果我的回答解决了您的问题,您可以将其标记为已接受

标签: javascript html node.js handlebars.js ejs


【解决方案1】:

您可以对您的服务器进行 ajax 调用并以 json 格式返回成功/错误数据/计算

然后使用此 json 使用客户端 javascript 在您的页面上添加动态 html 内容

$.ajax({
    url: '/admin/login',
    method: 'POST',
    data: {'key':'value'},
    beforeSend: function(){
      // show loader
    },
    success: function(response) {
       // hide loader
       // add dynamic html to dom from here
    });

希望对你有帮助

【讨论】:

    猜你喜欢
    • 2021-03-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-12-07
    • 2022-12-12
    • 2011-10-14
    • 1970-01-01
    • 2011-09-28
    相关资源
    最近更新 更多