在rails应用程序中没有弹出模态窗口

问题描述 投票:1回答:1

我正在使用一个链接触发ajax,它应弹出一个窗口,我无法做到这一点。我正在使用gem'bootstrap-modal-rails',我正在尝试使用以下代码

//index/HTML.而不

<%= link_to 'Link', load_users_teams_path(format: "js"), remote: true %>
<div id="id"></div>

<div id="modal-window" class="modal hide fade" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true"></div>

//控制器

def load_users
    @user = User.all
    respond_to do |format|
      format.html
      format.js
    end
  end

//load_users.就是.而不

$("#modal-window").html("<%= escape_javascript( render 'teams/load_users' ) %>");
$("#modal-window").modal() 

//load_users.HTML.而不

<div class="modal-header">
   <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
   <h3 id="myModalLabel">Modal header</h3>
 </div>
 <div class="modal-body">
   **here comes whatever you want to show!**
 </div>
 <div class="modal-footer">
   <button class="btn" data-dismiss="modal" aria-hidden="true">Close</button>
   <button class="btn btn-primary">Save changes</button>
 </div>

厌倦了一周以来的尝试..请指导我

ruby-on-rails
1个回答
0
投票

我在gemfile中添加了一些宝石

gem 'jquery-rails'
gem 'bootstrap-sass', '~> 3.4.0'
gem 'sassc-rails', '>= 2.0.0'
gem 'bootstrap-modal-rails'

在application.js下提到这些

//= require rails-ujs
//= twitter-bootstrap
//= require activestorage
//= require turbolinks
//= require jquery
//= require bootstrap-modal
//= require bootstrap-modalmanager

在application.js下提到这些

 *= require_tree .
 *= require_self
 *= require bootstrap-modal-bs3patch
 *= require bootstrap-modal

改变了application.html.erb的正文

<body>
  <%= render 'layouts/header' %>
    <div class="page-wrap">
    <div class="span9"><%= yield %></div>
    <div id="modal-window" class="modal fade" role="dialog" data-backdrop="static" style="z-index: 9999;" ></div>
    </div>
    <div id="modal-window" class="modal fade" role="dialog" style="z-index: 9999;" ></div>
    <%= render 'layouts/footer' %>
  </body>

_load_user.html.erb

<div class="modal-header">
<div class="modal-window">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h3 id="myModalLabel">Modal header</h3>
<div class="modal-body">
here comes whatever you want to show!
</div>
<div class="modal-footer">
<button class="btn" data-dismiss="modal" aria-hidden="true">Close</button>
<button class="btn btn-primary">Save changes</button>
</div>
</div>
</div>

load_user.js.erb

$("#modal-window").html("<%= escape_javascript( render "load_users") %>");
$("#modal-window").modal();

new.html.erb

<%= link_to 'Link' ,load_users_teams_path, remote: true %>

这解决了我的问题,实际上我在new.html.erb的代码与application.html.erb文件发生了冲突,一些宝石丢失了

© www.soinside.com 2019 - 2024. All rights reserved.