Я работаю над проектом RoR и JavaScript и использую AJAX-запрос для отправки формы.У меня есть запрос POST на отправку, но сначала он выполняет запрос GET.Форма очищается и страница перезагружается.
URL-адрес изменяется с http://localhost:3000/beers
на http://localhost:3000/beers?utf8=%E2%9C%93&authenticity_token=HVoHQ8WEZdIfVEvBcWJU5XT0dIiV2QL0B%2B2XeaY5m9g69A4yYWFxmx%2B4qiv2qPqx%2BJe3pphvtGT0oZhlWNTw3A%3D%3D&beer%5Bname%5D=Fat+Tire&beer%5Bbrewery_attributes%5D%5Bname%5D=New+Belgium+Brewing+Company&beer%5Bbeer_type%5D=Red+Ale+-+American+Amber+%2F+Red&beer%5Bibu%5D=22&beer%5Babv%5D=5.2%25&commit=Create+Beer
.
Я нажимаю кнопку отправки еще раз (с пустой формой), а затем он выполняет запрос POST и работает как следует. Он не делает это каждый раз , что меня действительно смущает.Я удалил файлы cookie, перезапустил сервер и попробовал другой браузер.Никто не устранил проблему.Если у кого-то есть понимание, я очень признателен за помощь.Заранее спасибо.
Мой запрос AJAX:
$(function() {
// new beer request
$('#new-beer-form').on("submit", function(e) {
$.ajax({
url: this.action,
method: "POST",
data: $(this).serialize(),
success: function(response) {
var $ol = $("div.beers ol")
$ol.append(response);
},
error: function(response) {
alert("Please fill out all criteria.");
},
});
e.preventDefault();
})
})