Rails - Bootstrap popover js

时间:2016-05-01 09:02:04

标签: javascript jquery ruby-on-rails twitter-bootstrap

我试图了解js如何在Rails中运行。

我正在使用bootstrap并设法让popovers工作,但不是我理解Rails工作的方式。

我目前在我的组织视图文件夹中有一个名为_preferences的部分名称。在我的组织展示页面中,我渲染了那个部分。 partial有一个调用popover的按钮,如下:

 <button class="fa fa-info-circle fa-2x fa-border btn-info" id="publicity" href="#"  rel="popover" data-original-title="Publicity Issues" data-content="<%= publicity_popover(@organisation.preference)%>"></button>

我尝试制作一个包含以下内容的organisations.js文件:

$('#publicity').popover()
$('#academic_publication').popover()
$('#presentations').popover()

但是当我尝试这种方法时,弹出窗口并没有起作用。

当我将以下内容添加到首选项部分的底部时,一切正常。

<script>
$('#publicity').popover()
$('#academic_publication').popover()
$('#presentations').popover()
</script>

我期待第一次尝试工作。我无法理解它为什么没有。有没有人看到错误?

1 个答案:

答案 0 :(得分:0)

您还没有使用 turbolinks 。您创建的文件是在文档<%= javascript_include_tag 'application', 'data-turbolinks-track' => true %> 的头部提取的,这是一种不好的做法,如果您正确使用turbolinks,那么您的应用程序会更快。在application.js中添加:

ready = function(){
$('#publicity').popover();
$('#academic_publication').popover();
$('#presentations').popover();
};
$(document).ready(ready);
$(document).on('page:load', ready);

详细了解https://github.com/turbolinks/turbolinks-classic