У меня возникли проблемы с использованием Ajax-запроса в экосистеме Rails + JQuery.Что я хочу сделать, это обновить содержимое диапазона с ответом на запрос AJAX, когда я нажму на ссылку.
Вот интересная часть моего взгляда:
<div class="field">
<%= f.label "Avatar (laissez vide pour utiliser votre gravatar)" %><br />
<span id="avatar">
<%= gravatar_for @user %>
</span><br />
<%= link_to "Editer votre gravatar", "http://www.gravatar.com/emails", :target => :_blank %><br />
<%= f.file_field :avatar %>
<%= link_to "Supprimer avatar", "/users/new/delete_avatar?id=#{@user.login}", :remote => true, :confirm => "Etes-vous sur?" %>
Моя цель - обновить интервал с идентификатором «аватар» при нажатии на последнюю ссылку.Вот код, который получает запрос:
def delete_avatar
user = User.find_by_login(params[:id])
user.avatar.destroy
respond_to do |format|
format.html { redirect_to edit_user_path @user }
format.js
end
end
А вот файл delete_avatar.rb.js, который вызывается response_to:
$("#avatar").html("<%= gravatar_for @user %>");
Теперь, когда я нажимаю насвяжите и используйте инструмент анализа запросов Firebug, который я получаю как запрос GET, с кодом состояния 304 или 200 в зависимости от того, является ли содержимое таким же, как раньше, или нет, со следующим содержимым:
$("#avatar").html("<img alt="foobar" class="gravatar" src="http://gravatar.com/avatar/f3ada405ce890b6f8204094deb12d8a8?size=150&default=http%3A%2F%2Fskullslab.elhu.me%2Fimages%2Fskl_avatar.png" />");
Кажется, это то, чего я ожидаю, но я не знаю почему, содержание страницы не изменилось.
Я застрял на этом уже несколько часов, иЯ совершенно уверен, что ответ действительно прост ... но я буду благодарен за любую помощь, спасибо!
PS: JQuery правильно загружен в мое приложение, так как я могу обновитьсодержимое диапазона при нажатии на ссылку, когда я не пытаюсь использовать AJAX.