2011-06-23 6 views
5

Używam Ruby on Rails 3.0.7 i jQuery 1.6.1 i chciałbym wiedzieć, jak obsłużyć zmienne odpowiedzi xhr, status i po żądaniu AJAX.Jak korzystać z żądania jQuery AJAX i metody renderowania Ruby on Rails?

Żądanie AJAX to:

$jQuery.ajax({ 
    type: "POST", 
    url:  "<request_to_the_controller_method>", // see the code below 
    error: function(xhr, status, ex) { 
    // handling with 'xhr', 'status' and 'ex' variables 
    } 
    success: function(jqXHR, status, ex) { 
    // handling with 'xhr', 'status' and 'ex' variables 
    } 
}); 

W regulatorze mam:

respond_to do |format| 
    format.js { 
    render ... # here should be properly stated the Ruby on Rails 'render' method 
    :status => 200 
    } 
end 

jak powinny być określone w kontrolerze metodę render aby odpowiedzieć na żądanie AJAX tak, że jest możliwe do obsługi wartości odpowiedzi (xhr, status i ex zmiennych) w sekcji error lub success żądania AJAX? Jak mogę obsłużyć wartości odpowiedzi po ich pobraniu (na przykład, aby wyświetlić te wartości w komunikacie alertu)?

W kilku światach chciałbym (w kontrolerze) odpowiedzieć na zapytanie AJAX z pewnymi danymi, a następnie (z drugiej strony) obsłużyć te dane.

Odpowiedz

3

Zobacz

How do you handle Rail's flash with Ajax requests?

i

Error Handling with Ajax in Rails 3

jak również szczegóły. Oto an excellent article na temat szyn, kierowca Szyny jQuery UJS, jQuery i rails.js

  1. Okazuje zdalnych linki, formularze, a wejścia i przesłania ich zdarzeń Kliknij, aby przesłać do serwera za pośrednictwem AJAX .
  2. Wywołuje sześć zdarzeń javascript, do których można powiązać wywołania zwrotne, aby pracować z odpowiedzią AJAX i manipulować nią.

A potem artykuł spacery, jak to wszystko zrobić za pomocą jQuery, UJS i szyn.