2010-11-13 3 views
1

Как обновить часть страницы с помощью Ajax в rails 2.3.8?Rails Ajax не обновляется

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

На моих кнопках для прокрутки месяцев выглядеть следующим образом:

<%= link_to_remote "<",:update=>'calendar',:url=>{:action=>'ajax_calendar',:month => (@date.beginning_of_month-1).strftime("%Y-%m")} %> 

Это моя главная страница, на которой я оказал частичный.

index.html.erb 
    <div id="calendar"> 
     <%= render :partial=>'calendar' %> 
    </div> 

, когда я пытался отладить с поджигатель на основе AJAX вызов становится выполнен правильно, и я также получаю правильный ответ от сервера, но с идентификатором «каландр» не получает обновления.

Может ли кто-нибудь указать, что я делаю неправильно?

Заранее спасибо.

Edit: Добавлен контроллер

def ajax_calendar 
    @events = Event.all 
    @date = params[:month] ? Date.parse(params[:month].gsub('-', '/')) : Date.today 
    render :partial => 'calender' 
end 

ответ

0

Я получал эту ошибку из-за использования как прототипа, так и jquery вместе. удаление jQuery разрешило это.

0

Я думаю, что рельсы хочет параметр URL-адреса перед обновлением. Попробуйте выполнить такой порядок:

<%= link_to_remote "<", :url=>{:action=>'ajax_calendar',:month => (@date.beginning_of_month-1).strftime("%Y-%m")}, :update=>'calendar' %> 

Однако, возможно, это не так. Ваш link_to_remote выглядит хорошо, вероятно, что-то в контроллере. Не могли бы вы показать нам свой код контроллера для действия?

+0

обновил вопрос, включив контроллер. –