有没有办法在javascript http请求中保留表单POST提交操作的默认行为?通常,当我提交表单时,网址会重定向到action
,页面会被响应html替换,但如果您在preventDefault()
上使用return false
或submit
事件,您将获得HTML中的响应作为字符串发送回回调。
现在我必须在表单提交中添加一些额外的数据,但我想根据响应更新页面。
$("#"+target).on('submit', function (e)
const counselors_list = counselors.list.map(e=>e.name);
const groups_list = ...
const data = $(this).serialize() + "&" + $.param({patient: {counselors: counselors_list, groups_attended: groups_list}});
$.post(action, data, e=>e)//Data gets returned as e, instead of updating the page
return false;
});
我能想到的唯一方法是用响应取代整个DOM,但这看起来非常糟糕。有没有办法在保留默认表单行为的同时仍然添加这些数据?