0

简而言之,我的问题是在咖啡脚本实现的 jQuery-UI 处理程序中,我无法创建和显示引导模式。如果我尝试使用引导文档中的标准按钮方法显示模式,它就可以正常工作。编辑 3:这是在使用资产管道的 Ruby on Rails 3.2 应用程序中。

<a href="#my-modal" role="button" class="btn" data-toggle="modal">Launch demo modal</a>

但是,当我从 jQuery-UI 事件处理程序中执行此操作时:

$("#my-modal").modal('show')

或者

$("#my-modal").modal({})

我收到此错误:

Uncaught TypeError: Object [object Object] has no method 'modal'

我的 html 非常标准——我只是使用了 bootstrap 文档中的示例 html。我有这个用于 jQuery-UI 事件处理程序的咖啡脚本:

$ ->
  $("#selectable").selectable(
    selected: (event, ui) ->
      $("#my-modal").modal({})
  )

编辑:由于这是一个范围问题的味道,我尝试使用 -> 和 => 来查看是否改变了事情,但没有任何改变有任何区别。

编辑 2:我已经验证了 javascript 库的包含顺序正确:jquery、jquery-ui、jquery_ujs,然后是 bootstrap.js。是否有可能我需要引入另一个库?

我已经验证 $("#my-modal") 通过执行正确找到模态 DOM 对象

console.log $("#my_modal").html()

我不明白这一点。代码对我来说看起来非常简单明了。

4

1 回答 1

2

我终于想通了,并认为我会发布答案以防其他人遇到此问题。

我们团队中的其他人使用 jQuery 引入了 Google Analytics,并且在 bootstrap 将自身注入 jQuery 之后重新引入了 jQuery,从而将 bootstrap 从世界中移除。

由于我们正处于项目的第一阶段,我们的座右铭是今天不要试图解决明年的问题,所以我解雇了他,当他离开时我们等着他回来。当然,他是我的老板,所以这一切都没有发生。

于 2013-04-10T15:58:00.393 回答