当Bootstrap模式显示时,Rails加载数据

时间:2013-01-29 00:21:25

标签: ruby-on-rails twitter-bootstrap

我正在使用Bootstrap模式。现在,当整个html页面加载时,模态中列出的表被加载。我想在模态启动时加载表的数据。

如何在模式启动时加载模态中的数据?

这是我的模态的第一部分 - 它包含几个Bootstrap标签。

                  <div class="modal-body">
                  <div class="tabbable">
                    <ul class="nav-tabs">
                      <li class="active"><a href="#tab1_<%= workorder.id %>" data-toggle="tab">Details</a></li>
                      <li><a href="#tab2_<%= workorder.id %>" data-toggle="tab">Materials</a></li>
                      <li><a href="#tab3_<%= workorder.id %>" data-toggle="tab">Labor</a></li>
                      <li><a href="#tab4_<%= workorder.id %>" data-toggle="tab">Tasks</a></li>
                    </ul>
                    <div class="tab-content">
                      <div class="tab-pane active" id="tab1_<%= workorder.id %>">
                        <table border="1" cellpadding="5">
                          <tr>
                            <th>Description</th>
                            <td><%= workorder.description %></td>
                          </tr>
                          <tr>
                            <th>Client</th>
                            <td><%= workorder.client.client_name %></td>
                          </tr>
                          <tr>
                            <th>Type</th>
                            <td><%= workorder.type.typecode %></td>
                          </tr>
                          <tr>
                            <th>Priority</th>
                            <td><%= workorder.wopriority.prioritycode %></td>
                          </tr>
                          <tr>
                            <th>Scheduled Finish</th>
                            <% if workorder.scheduled_finish != nil %>
                                <td>Scheduled Finish = <%= workorder.scheduled_finish %></td>
                                <% else %>
                                 <td></td>
                            <% end %>
                          </tr>
                        </table>
                      </div>
...

感谢您的帮助!

2 个答案:

答案 0 :(得分:0)

您有两种选择:

  1. 使用AJAX填充表格,启动你的mondal
  2. 带有iframe的Mondal
  3. 如果您只是简单地显示信息,那么iframe就是一种快速而肮脏的解决方案。

答案 1 :(得分:0)

使用Ajax(将您的链接设置为link_to,使用remote =&gt; true)并渲染部分内容。然后将tab-pane的innerHTML设置为通过Ajax返回的部分内容。当然,您需要在控制器中添加逻辑,以便仅解析每个选项卡的数据。

可能有助于阅读:
http://guides.rubyonrails.org/ajax_on_rails.html