2014-09-17 2 views
0

У меня есть форма в bootstrap modal, которую я отправляю с Ajax. До этой части все хорошо, форма отправляется, а данные сохраняются в базе данных. Но после этого никакие функции обратного вызова не запускаются, ни полные, ни успешные, ни ошибки. Мне действительно трудно понять, откуда это взялось.Ajax-поданная форма, никакой обратный вызов не вызван

Контроллер:

def create 
@param = EventParam.new(event_param_params) 

respond_to do |format| 
    if @param.save 
    format.json { render json: @param } 
    else 
    format.html { render :new } 
    format.json { render json: @mail_template.errors, status: :unprocessable_entity } 
    end 
end 

конец

JS:

$(".event-param-form").submit(function(e){ 
      e.preventDefault(); 
      var valuesToSubmit = $(this).serialize(); 
      $.ajax({ 
        type: "POST",   
        url: $(this).attr('action'), 
        data: valuesToSubmit, 
        dataType: "JSON", 
      }); 
    }); 

    $('.event-param-form').bind('ajax:complete', function() { 
      console.log("test"); 
      $("#myModal").modal('hide'); 
    }); 

Обратите внимание, что я также пытался использовать успех обратного вызова/полный от $ .ajax() без результатов.

+0

Он должен быть '' format.js' не format.json', вы отправляете через JavaScript. –

+0

Действительно. я сделал изменения, но ничего не делает. – Simon

ответ

1

Вы можете использовать метод успеха в AJAX сам

$(".event-param-form").submit(function(e){ 
      e.preventDefault(); 
      var valuesToSubmit = $(this).serialize(); 
      $.ajax({ 
        type: "POST",   
        url: $(this).attr('action'), 
        data: valuesToSubmit, 
        dataType: "JSON", 
        success : function(data){ 
        //Success Call back 
        console.log(data); 
        alert('success'); 
        $("#myModal").modal('hide'); 
        }, 
        error :function(jqXHR, textStatus, errorThrown) { 
        // Error Callback 
        } 
      }); 
    }); 
+0

Как я уже сказал, я пробовал это, я начал с этого, и это не сработало. Это действительно странно, ха-ха. – Simon

Смежные вопросы