按钮点击Jade

Phi*_*ien 12 html javascript express pug

点击它时我很难获得一个执行javascript函数的按钮,下面是我的jade文件

extends layout
block content
  - var something = function() {
  -   console.log('something')
  - }

  button(onclick='#{something()}') Click
Run Code Online (Sandbox Code Playgroud)

我哪里错了?

tim*_*hew 33

有了这条线:
button(onclick='#{something()}') Click

你告诉Jade它应该将函数的内容粘贴到onclick属性的值中.

只需引用函数名称:

button(onclick='something()') Click
Run Code Online (Sandbox Code Playgroud)

但这不起作用,因为该功能仅在Jade编译步骤中可用.在此步骤之后,生成的HTML无法访问Jade中定义的变量.

您需要包含JavaScript文件或使用脚本标记:

script.
  var something = function() {
    console.log('something')
  }

button(onclick='something()') Click
Run Code Online (Sandbox Code Playgroud)