Вкладки JQuery с Rails: замена содержимого вкладок - PullRequest
2 голосов
/ 23 февраля 2011

У меня есть вкладка со страницей, отображаемой внутри.Все хорошо.Затем пользователь нажимает кнопку.Я хочу, чтобы результат этого отображался на вкладке.В настоящее время пользователь полностью отключается от представления вкладок.

Вот HTML-код вкладки в файле .html.erb:

<div id="tabs">
  <ul>

    <li><a href="urls">Manage URLs</a></li>
    ...other tabs...
  </ul>

  <div id="urls-tab">
    <p>
    </p>
  </div>
  ...other tabs...
</div>

У меня есть новая кнопка в форме как таковая:

<%= form_tag('urls/someaction_not_new', :method => :post, :id = "top-form") do %>
  ...content...
  <input type="button" id="New" value="New" onclick="someJavascript()">

<% end %>

Наконец, javascript:

$("#tabs").tabs();

function someJavascript() {
  document.location = "urls/new"
}

Я знаю, что javascript не работает, и я никогда этого не ожидал.Мне нужно знать, как построить эту функцию так, чтобы она загружала вывод «urls / new» на вкладку, а не перенаправляла на новый вид без вкладок.

Любая помощь будет принята с благодарностью.!

Ответы [ 2 ]

0 голосов
/ 23 февраля 2011

Причина, по которой он это делает, заключается в том, что это html-запрос, и он обновляет страницу, которая приводит к исчезновению ваших вкладок.

Похоже, что вы должны вызывать AJAX-запрос при отправке формы,Если вы сделаете это, вы можете отобразить ответ javascript в своем представлении и соответствующим образом отобразить html внутри вкладки.

0 голосов
/ 23 февраля 2011

используйте это:

function someJavascript() {
  $('#tabs').load('urls/new')
}

Это загрузит вашу страницу 'urls / new' в # tabs

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...