我正在开发一个 Rails 应用程序,我在其中使用 jQuery 和 Facebox Lightbox 弹出表单。我想在表单上使用一些 jQuery 验证。当我尝试实现这一点时,我遇到了一些奇怪的结果。
如果我将 javascript 直接放入我在弹出窗口中加载的视图中,则 javsacript 工作得很好。
示例:app/views/item/view.html.erb
...
<script type="text/javascript">
$(document).ready(function() {
...
});
</script>
但是,如果我将它抽象一步并将 javascript 放入我用于弹出窗口的布局中,它会失败。
示例:app/views/layouts/popup.html.erb
<script type="text/javascript">
$(document).ready(function() {
...
});
</script>
<div id="popup">
<%= yield %>
</div>
如果我将脚本从直接编码到视图中提取到单独的 javascript 文件中,它也会失败,例如,如果我将相同的脚本放入../public/javascripts/popup.js
然后在我看来,我这样做:
<%= javascript_include_tag 'popup' %>
它在这里失败了。
你会认为它在哪个文件中没有任何区别。它应该以相同的方式加载。
知道为什么会这样吗?