【问题标题】:How to interact with a static html page rendered by a router in Express?如何与 Express 中的路由器呈现的静态 html 页面进行交互?
【发布时间】:2019-01-22 05:42:15
【问题描述】:

首先,我不得不说我对 NodeJs 很陌生, 我正在渲染一个静态 html 网页(它在内部执行一个 javascript 代码)作为对发布请求的响应,这是我的代码:

router.post('/', formidable(), function (req, res, next) {
    res.sendFile(path.resolve(__dirname+'/../public/result.html'), {}, function (err) {
        if (err) {
            console.log(err);
        }
    })});

现在我的问题是如何与在这个静态页面上运行的 javascript 代码进行交互,比如将事件处理程序附加到它(例如当用户关闭页面时)?

【问题讨论】:

    标签: javascript node.js express nodes


    【解决方案1】:

    请记住,尽管它们都是用 JavaScript 编写的,但您处理的是two different programs running on two different computers

    检测用户关闭页面等事件的事件处理程序需要在客户端上运行,使用客户端 JavaScript。

    要添加它们,您需要在绑定它们的 HTML 中包含一个 <script> 元素。

    您可以通过三种方式做到这一点:

    1. 编辑静态 HTML 以包含脚本
    2. 不要使用静态 HTML。使用模板系统生成页面,其中注入了 JS。
    3. 使用 DOM 库解析静态 HTML,对其进行编辑,然后输出

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-10-14
      • 2016-10-21
      • 2021-06-05
      • 2014-10-13
      • 2011-08-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多