У меня есть форма в 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() без результатов.
Он должен быть '' format.js' не format.json', вы отправляете через JavaScript. –
Действительно. я сделал изменения, но ничего не делает. – Simon