Javascript 玉钮一次点击不起作用

Javascript 玉钮一次点击不起作用,javascript,node.js,pug,Javascript,Node.js,Pug,我目前在jade中有一个文件,我正在尝试制作一个表单,如果用户在填写问题答案后单击submit按钮,那么它将运行一个JavaScript函数。但是,由于某些原因,它无法在文件中找到函数 下面是我的玉码: script(language='JavaScript'). function checkAnswer() { var answer = document.getElementById('sessionID').value.toLowerCase(); if(answer

我目前在jade中有一个文件,我正在尝试制作一个表单,如果用户在填写问题答案后单击submit按钮,那么它将运行一个JavaScript函数。但是,由于某些原因,它无法在文件中找到函数

下面是我的玉码:

script(language='JavaScript').
  function checkAnswer() {
    var answer = document.getElementById('sessionID').value.toLowerCase();
      if(answer == '4') {
        console.log('Correct!');
      }
      else {
        console.log('Sorry, try again!');
      }
  }

extends ../layout

block content
  .page-header
    h3 Challenge #1
  p 2 + 2 = ?
  input(type='text', name='sessionID', value=valueID)
  input(type='button', value='Submit', onclick='checkAnswer()')
这将返回错误代码:

Uncaught ReferenceError: checkAnswer is not defined

我做错了什么?这一定是非常愚蠢的事情:(

你需要将脚本放在某个块中,以便插入到生成的html文件中。

在上面的人的帮助下修复了它-尽管其他人说它不够具体,但对我来说已经足够好了:)

以下是您将如何解决此问题。因为它位于“块”之外,所以只需将脚本移动到块中,它现在就可以从Jade编译成HTML。就我个人而言,我也将JS移到了另一个文件中,而不是在jade文件中描述函数,而是将其移到了另一个JS中,并将其包含在jade文件中

script(type='text/javascript' src='answers.js')

再次感谢你的帮助

尽管这可能是一个正确的答案,但毫无帮助。“某个街区”没用。你应该多加一点信息。否则,你的答案可能真的会被删除。我估计OP已经读过了。他知道什么是街区。我清楚地指出,是的,他需要将脚本标记放在一些
中,比如他的
内容
块,以便将其包含在生成的html文件中。我还告诉他,要将函数注册为事件处理程序,需要事先在页面中声明,这不是他编写函数的方式。我觉得这很有帮助。总比缠着别人说这些废话好,而不是贴一个更好的。