【发布时间】:2013-12-05 06:57:58
【问题描述】:
我正在为学校开发一个 Rails 应用程序,但我不明白为什么这些事件永远不会被触发。这只是我第二次使用咖啡脚本。第一次是在同一个应用程序上,效果很好。我在stackoverflow上搜索并查看了jquery API,但我不知道我哪里出错了?我什至尝试将有问题的<input> 标签更改为<span>,并将事件更改为"click"。那是我为我的另一段咖啡脚本(有效)所做的确切设置......但在这里它不起作用。我什至还没有开始我想要的功能。这只是一个不太顺利的健全性检查。
[assets/javascripts/calculator.coffee]
$ ->
$("#foot_count").on("keyup change paste", update)
update = ->
console.log("askhdkajshk")
[views/site/calculator.html.erb]
<div id="main">
<div class="large_main_container">
<h1>Fill out this form to get a rough estimate.</h1>
<form>
<table>
<tr>
<td class="form_label">Number of Feet</td>
<td><input class="input_field" id="foot_count" type="text"></td>
</tr>
<tr>
<td class="form_label">Number of Gates</td>
<td><input class="input_field" id="gate_count" type="text"></td>
</tr>
<tr>
<td class="form_label">Estimated Price</td>
<td id="calculated_value">Some Value</td>
</tr>
</table>
</form>
</div>
</div>
更新 我的问题是使用 :layout => false 渲染页面。 我不太确定该咖啡脚本在资产中的位置。是时候开始阅读了。如果有人有建议,谢谢!
更新
在我的视图中添加<%= javascript_include_tag "application" %> 解决了这个问题。
【问题讨论】:
-
你的萤火虫控制台说什么?
-
@muistooshort 尝试禁用 turbolinks 但没有任何改变。 blog.flightswithfriends.com/post/53943440505/…
-
@Lichtamberg 我正在使用 chrome 的控制台,但它不打印任何内容。
-
我不知道这是否有帮助,但是当我使用
text_field_tag "name", "value", :onkeyup => "alert('it worked')"时,事件就会发生。我不介意这样做,但无法弄清楚如何将我的资产中的函数用于:onkeyup => "myFuncFromAssets" -
我知道为什么它不起作用了。我正在使用 :layout => false 呈现页面。现在我只需要弄清楚将这个咖啡脚本放在哪里,这样它仍然会被渲染。我需要咖啡脚本,但不需要布局中的 html。
标签: jquery ruby-on-rails coffeescript ruby-on-rails-4