Rails 删除对话框弹出两次……

puras · 2012年06月04日 · 最后由 puras 回复于 2012年06月04日 · 4310 次阅读

页面的代码为:

<%= link_to '删除', category_path(category), :method => :delete, :confirm => '确认删除?', :class => 'btn btn-mini btn-danger' %>

在页面中,点击删除按钮时,会弹出两次确认对话框。。。 这是咋回事咧?

环境:ubuntu12.04 ruby 1.9.3 rails 3.2.3 ngnix+passenger

-_-~~~

很有可能是加载了两个 jquey.js

#1 楼 @fresh_fish 应该是这样的,你看看你的 application.js 是不是写了两次

<script src="/assets/jquery.js?body=1" type="text/javascript"></script>
<script src="/assets/jquery_ujs.js?body=1" type="text/javascript"></script>
<script src="/assets/twitter/bootstrap/bootstrap-transition.js?body=1" type="text/javascript"></script>
<script src="/assets/twitter/bootstrap/bootstrap-alert.js?body=1" type="text/javascript"></script>
<script src="/assets/twitter/bootstrap/bootstrap-modal.js?body=1" type="text/javascript"></script>
<script src="/assets/twitter/bootstrap/bootstrap-dropdown.js?body=1" type="text/javascript"></script>
<script src="/assets/twitter/bootstrap/bootstrap-scrollspy.js?body=1" type="text/javascript"></script>
<script src="/assets/twitter/bootstrap/bootstrap-tab.js?body=1" type="text/javascript"></script>
<script src="/assets/twitter/bootstrap/bootstrap-tooltip.js?body=1" type="text/javascript"></script>
<script src="/assets/twitter/bootstrap/bootstrap-popover.js?body=1" type="text/javascript"></script>
<script src="/assets/twitter/bootstrap/bootstrap-button.js?body=1" type="text/javascript"></script>
<script src="/assets/twitter/bootstrap/bootstrap-collapse.js?body=1" type="text/javascript"></script>
<script src="/assets/twitter/bootstrap/bootstrap-carousel.js?body=1" type="text/javascript"></script>
<script src="/assets/twitter/bootstrap/bootstrap-typeahead.js?body=1" type="text/javascript"></script>
<script src="/assets/twitter/bootstrap.js?body=1" type="text/javascript"></script>
<script src="/assets/bootstrap.js?body=1" type="text/javascript"></script>
<script src="/assets/categories.js?body=1" type="text/javascript"></script>
<script src="/assets/fun_urls.js?body=1" type="text/javascript"></script>
<script src="/assets/funs.js?body=1" type="text/javascript"></script>
<script src="/assets/home.js?body=1" type="text/javascript"></script>
<script src="/assets/questions.js?body=1" type="text/javascript"></script>
<script src="/assets/roles.js?body=1" type="text/javascript"></script>
<script src="/assets/sessions.js?body=1" type="text/javascript"></script>
<script src="/assets/users.js?body=1" type="text/javascript"></script>
<script src="/assets/application.js?body=1" type="text/javascript"></script>

有再次么?

... 你把没用的文件删掉,检查下你的 application.js

#5 楼 @hlcfan application.js 中是不是已经引用了一遍 jquery 了?

#6 楼 @puras 默认是的

//= require jquery
//= require jquery_ujs

用了 bootstrap 的插件。所以多一个. 还有一个 require_tree 的。。。好像原来就有的


//= require jquery
//= require jquery_ujs
//= require twitter/bootstrap
 //= require_tree .
需要 登录 后方可回复, 如果你还没有账号请 注册新账号