【发布时间】:2020-02-10 09:17:50
【问题描述】:
这是我的application.html.erb,带有标签h1和onclick执行JS函数greatTutorial()。
## application.html.erb
<!DOCTYPE html>
<html>
<head>
<title>Dealabs</title>
<%= csrf_meta_tags %>
<%= csp_meta_tag %>
<%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track': 'reload' %>
<%= javascript_pack_tag 'application', 'data-turbolinks-track': 'reload' %>
</head>
<body>
<div class="container">
<%= render "layouts/navbar" %>
<h1 onclick="greatTutorial()">Hello World</h1>
<% if notice %>
<p class="notice alert alert-info"><%= notice %></p>
<% end %>
<% if alert %>
<p class="alert alert-danger"><%= alert %></p>
<% end %>
<%= yield %>
</div>
</body>
</html>
还有我的 javascript/pack/application.js
##javascript/pack/application.js
require("@rails/ujs").start()
require("turbolinks").start()
require("@rails/activestorage").start()
require("channels")
function greatTutorial() {
alert('Rails Guides are the best');
}
我对此进行了多次询问,但没有任何效果。如果我用 h1 onclick="alert('danger')" 替换我的函数 onclick 工作正常。但我不明白为什么我的函数greatTutorial 未定义(从不存在)。
谢谢!
【问题讨论】:
-
你在使用 Rails 6 吗??
标签: javascript ruby-on-rails ruby