【发布时间】:2023-03-17 04:09:01
【问题描述】:
当直接添加到我的视图中时,我有一些对我来说很好用的 JS...
#app/views/registrations/index.html.erb
...
<td><%= check_box_tag 'checked_in', registration.id , registration.checked_in, :class => "check-in" %></td>
...
<script>
$(".check-in").bind('change', function(){
$.ajax({
url: '/registrations/'+this.value+'/toggle',
type: 'POST',
data: {"checked_in": this.checked}
});
});
</script>
呈现的 html 是...
<td><input checked="checked" class="check-in" id="checked_in" name="checked_in" type="checkbox" value="5" /></td>
我去了http://js2coffee.org/ 并通过研磨机运行它,它给了我...
$(".check-in").bind "change", ->
$.ajax
url: "/registrations/" + @value + "/toggle"
type: "POST"
data:
checked_in: @checked
所以我将此块添加到 app/assets/javascripts/registrations.js.coffee 并且没有工作。 Firefox Web 控制台中没有抛出任何错误,如果我在页面上查看源代码,则不会生成/显示 JS。但是,如果我在 registrations.js.coffee 文件中执行类似警报“测试”的操作,我会看到它。
有什么想法吗?
【问题讨论】:
-
每个键/值对后缺少逗号?
-
您能说得更具体些吗?也许是一个粘贴箱?
-
@Lumbee 您是否将修改后的
<script src>包含在与原始位置相同的位置?它现在可能在任何.check-in元素实际存在之前运行。尝试在第一行添加$ ->并缩进其余部分。
标签: javascript ruby-on-rails coffeescript asset-pipeline