【发布时间】:2012-04-15 17:44:22
【问题描述】:
假设有两个页面具有两个具有相同名称的不同 html 元素
a.html
<select id='collection_select'></select>
b.html
<select id='collection_select'></select>
还有一个javascript函数只能应用于a.html
a.js
$(function(){
$('#collection_select').change(function(){
....
})
})
因为 Rails 连接了所有的 JS 资产,这个函数现在也适用于b.html。是否有 Rails/Sprockets/JS 最佳实践以特定方式构造和命名 JS 资产,以便 JS 的范围仅限于特定页面。
【问题讨论】:
-
我认为这是一个很好的问题(我最近问了一个类似的问题),但我不禁说最好的做法是为您的选择提供更好的 id。 ;)
标签: html ruby-on-rails-3.1 sprockets