Rails3 Jquery - Сообщение о загрузке контента - PullRequest
1 голос
/ 23 июля 2011

Я новичок в использовании Jquery в Rails.Может ли кто-нибудь предоставить рабочий пример сообщения о загрузке контента.Я не хочу использовать глобальный ajaxStart, потому что я не хочу, чтобы он вызывался каждый раз.

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

Я осмотрелся и увидел кусочки кода, чтобы выполнить это, но, похоже, я не понимаю, куда все это идет.

Все, что направит меня в правильном направлении, было бы замечательно.

Мой код: index.html

<%= link_to 'Health & Beauty', health_contacts_path, :action => 'health',  :remote => true %>

health.js

$(function (){
  $(".health")
    .bind("ajax:beforeSend",  function() {
  $("#spinner").show('slow');
    });
    .bind("ajax:success", function() {
  $("#spinner").hide();
    });
    .bind("ajax:complete", function(event, data, status, xhr) {
       $("#content").html("<%= escape_javascript(render(:partial => "health")) %>");
    });
 });

Большое спасибо

РЕДАКТИРОВАТЬ: Я изменил код в здоровье.js, я не понимаю, что это не работает.Если я достану ajax: beforeSend и ajax: success, то загрузится ajax: complete.Если эти двое там, ничего не работает.

1 Ответ

1 голос
/ 23 июля 2011

Когда пользователь нажимает на что-то, что загружает частичку, я немедленно открываю свой пульсатор (загрузка изображения).

$(".throb_2").fadeIn();

Затем в файле, который загружает show.js.haml, я снова скрываю его, когдапартиал вызывается.

==  $(".throb_2").fadeOut();
==  $(".opened_gallery").html("#{ escape_javascript(render :partial => 'photo_index') }").hide().fadeIn();

Обновление

Похоже, я должен проинформировать вас о том, как я вызываю вызовы AJAX в целом ..

Шаг 1 .. визуализируйте ваше link_to в return false;

$(".ajax").live("click", function(){
 $.get($(this).attr("href"), null, null, "script");
 return false;
});

Теперь любая ссылка, которую вы добавляете в класс .ajax, также будет вызывать контроллер / действие, но фактически не перенаправит ваш браузер.

В моем случае это действие было моим шоу-действием.Но у меня нет файла show.html.erb, у меня есть файл show.js.И в этом файле я выполняю методы javascript, описанные выше.

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