要实现在表单提交时重新加载页面,可以使用以下方法:
在Rails API后端:
class FormController < ApplicationController
def create
# 处理表单数据
# ...
render json: { success: true }
end
end
Rails.application.routes.draw do
post '/form', to: 'form#create'
end
在Javascript前端:
fetch
或axios
等库发送表单数据到后端:const form = document.querySelector('#myForm');
form.addEventListener('submit', (e) => {
e.preventDefault();
fetch('/form', {
method: 'POST',
body: new FormData(form)
})
.then(response => response.json())
.then(data => {
// 处理响应数据
// ...
// 重新加载页面
location.reload();
})
.catch(error => console.error(error));
});
这样,当用户点击提交按钮时,表单数据将被发送到后端进行处理,处理完成后页面将重新加载。