Проблема загрузки содержимого с помощью вкладок пользовательского интерфейса jQuery с помощью Ajax - PullRequest
1 голос
/ 26 сентября 2011

У меня сейчас есть вкладки jQuery UI, но мне нужна помощь в реализации Ajax. Мне нужна помощь в получении #tab-2 для отображения информации (@user.messages) из MessagesController в макете, который существует как частичное в MessagesController.

Мой application.js:

$(function() {
    $( "#tabs" ).tabs({
        ajaxOptions: {
            error: function( xhr, status, index, anchor ) {
                $( anchor.hash ).html(
                    "Couldn't load this tab. We'll try to fix this as soon as possible. " +
                    "If this wouldn't be a demo." );
            }
        }
    });
});

Мой профиль show.html.erb:

<div id="tabs">
  <ul id="infoContainer">
    <li><a href="#tabs-1">About</a></li>
    <li><%= link_to "Messages", "messages/profile_messages", :remote => true %></li>
  </ul>
  <div id="tabs-1">
  </div><!-- end profile-about -->
</div>

Мой _profile_messages частичный в MessagesController:

<div id="tabs-2">
    <% for 'message' in @user.messages %>
        <div class="message">
        </div>
    <% end %>
</div>

Вот вывод HTML вкладок пользовательского интерфейса jQuery:

<div id="tabs">
  <ul id="infoContainer">
    <li><a href="#tabs-1">About</a></li>
    <li><a href="messages/profile_messages" data-remote="true">Messages</a></li>
  </ul>
<div id="tabs-1">

Вот вкладки, как видно из Firebug:

<div id="tabs" class="ui-tabs ui-widget ui-widget-content ui-corner-all">
  <ul id="infoContainer" class="ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all">
    <li class="ui-state-default ui-corner-top ui-tabs-selected ui-state-active"><a href="#tabs-1">About</a></li>
    <li class="ui-state-default ui-corner-top"><a href="#ui-tabs-1" data-remote="true">Messages</a></li>
  </ul>
  <div id="tabs-1" class="ui-tabs-panel ui-widget-content ui-corner-bottom">
  </div>
</div>

Тот факт, что Firebug показывает вторую ссылку как # ui-tabs-1, кажется мне странным. Затем, когда я нажимаю ссылку «Сообщения» для загрузки @ user.messages, Firebug показывает ошибку Failed to load resource: the server responded with a status of 404 (Not Found) - :3000/profiles/messages/profile_messages.

1 Ответ

0 голосов
/ 09 октября 2011

Благодаря совместным усилиям людей здесь, на SO, я смог заставить это работать.Ознакомьтесь с этими вопросами, чтобы получить больше кода:

Исключить макет приложения в Rails 3 div

Rails 3 Вкладки пользовательского интерфейса jQuery при загрузке Ajax

...