отправка формы во второй раз, рендерит предыдущий частичный, а также текущий - PullRequest
0 голосов
/ 19 марта 2012

Я отправляю одну форму текстовой области через: remote => true.Это прекрасно работает, однако, если я отправляю форму дважды, не перезагружая страницу, она рендерит частичную 3 раза.При первом представлении, затем, если я ввожу новый текст и отправляю его снова, он загружает как предыдущий, так и текущий фрагмент, в результате чего получается 3 отправки.Он только отправляется в базу данных дважды, при обновлении страницы один из них исчезает.Мой контроллер выглядит так:

respond_to do |format|
    format.html { redirect_to(return_to) }
    format.js
  end

и мой это мой js:

$('.comment_form').bind('ajax:success', function(){
    $(this).closest('.post').children('.comment_container').prepend("<%= escape_javascript(render :partial => 'public/comment', :object => @comment) %>");
    $('.notice').html('<p>New Comment Added</p>');
    $(this).children(':input').val('');
    $(this).closest('.comment_form_div').slideUp();
    return false;
});

Я включаю jquery и jquery-ujs только один раз, и я попытался установить $.ajaxSetup({cache:false});но безрезультатно.

Кто-нибудь еще сталкивался с этой проблемой?

1 Ответ

0 голосов
/ 04 апреля 2012

только на всякий случай, если у кого-то еще есть эта проблема.

Я должен был сделать:

$('#post_form').bind('ajax:complete', function(){
    $('#post_form').unbind('ajax:success');
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...