javascript - 如何将辅助方法的输出用作 haml 哈希中的值?

标签 javascript ruby-on-rails haml helper

我有一个按钮,我想在每次加载页面时动态设置它的 onClick 属性。我想每次都使用 application_helper 给它一个自定义的 javascript。这似乎很难做到,因为 Javascript 将需要访问只有 ruby​​ 才能访问的内容。我想使用 application_helper 模块构建自定义 javascript,并生成调用 helper 方法的结果作为 Haml 散列中 onClick 键的值:

在 application.html.haml 中:

%button{class: "user_navigation_menu_item", onClick: =  gimme_my_custom_javascript}

在 application_helper 中,rb:

def gimme_my_custom_javascript
  javascript = "function(){"
  javascript +="alert('yo!');"
  javascript+="}"
end

Haml 对我大喊大叫:'unexpected "="'

我如何做我想做的事?

谢谢

最佳答案

只需去掉 = 就可以了:

%button{class: "user_navigation_menu_item", onClick: gimme_my_custom_javascript}

关于javascript - 如何将辅助方法的输出用作 haml 哈希中的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10424459/

相关文章:

javascript - 悬停时隐藏文本

javascript - 在 bootstrap 中使用 Collapsibles

ruby-on-rails - 注释掉 haml 表中的项目

ruby-on-rails - 为什么 PostgreSQL 查询在服务器启动后的第一个请求中比在后续请求中慢?

ruby - 在 Haml 的链接中执行 ruby​​ 代码

ruby-on-rails - 使用 Rails 和 HAML video_tag 循环播放 HTML5 视频

javascript - 请求到node.js中的其他路由

javascript - 根据 if 语句结果更改 if 语句参数中的变量值

ruby-on-rails - rswag 嵌套对象,rswag 语法

ruby-on-rails - rails 每当 gem ,只有在特定条件通过时才运行命令。