【问题标题】:Button clicks in JadeJade 中的按钮点击次数
【发布时间】:2014-05-08 02:07:56
【问题描述】:

我在点击按钮时无法执行 javascript 函数,下面是我的翡翠文件

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

  button(onclick='#{something()}') Click

我哪里错了?

【问题讨论】:

  • 该功能在哪里?那是服务器端功能吗?
  • 我不确定我是否遵循,功能是玉视图。如果我只是在视图中调用该函数(而不是通过单击按钮调用它),那么它会很好地记录到控制台。

标签: javascript html express pug


【解决方案1】:

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

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

只需引用函数名:

button(onclick='something()') Click

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

您需要包含一个 JavaScript 文件或使用脚本标签:

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

button(onclick='something()') Click

【讨论】:

  • 谢谢,我现在已经到了某个地方,但是当我这样做时,我会收到Uncaught ReferenceError: something is not defined
  • 完美,现在可以使用了!我对翡翠的缺乏知识真的在那里闪耀:)
  • @timaschew 我最后声明了脚本标签,但它仍然对我不起作用。
  • 请提供小提琴链接。
【解决方案2】:

只需添加一个空格:

button(onclick='#{something()}') Click

【讨论】:

  • 对不起,我的错误,我的代码中确实有一个空格,它仍然无法正常工作
  • 如果你打开你用来启动node.js的控制台,你会看到什么?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-10-28
  • 2013-06-29
  • 2015-05-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-10-22
相关资源
最近更新 更多