请求协助:实现form.js提交后跳转回contact.html页面
解决表单提交后跳转回contact.html的问题
没问题,我来帮你调整这段代码,实现提交成功或显示错误信息后跳回contact.html的需求。核心思路是在处理完成功/错误的UI提示后,添加页面重定向逻辑,还可以给用户留一点时间查看提示内容再跳转,体验更友好。
修改后的after_form_submitted函数如下:
$(function() { function after_form_submitted(data) { if (data.result == 'success') { $('form#reused_form').hide(); $('#success_message').show(); $('#error_message').hide(); // 2秒后跳回contact.html,可根据需求调整延迟时间 setTimeout(() => { window.location.href = 'contact.html'; }, 2000); } else { $('#error_message').append('<ul></ul>'); jQuery.each(data.errors, function(key, val) { $('#error_message ul').append('<li>' + key + ':' + val + '</li>'); }); $('#success_message').hide(); $('#error_message').show(); // 错误提示留更久时间方便用户查看,再跳转 setTimeout(() => { window.location.href = 'contact.html'; }, 3000); } } // 其他原有代码... });
关键修改点说明:
- 用
window.location.href = 'contact.html'实现直接页面重定向,这是前端跳转最常用的方式。 - 把跳转逻辑包裹在
setTimeout里,是为了让用户有时间看到成功/错误提示,再自动跳转。如果不需要延迟,直接去掉setTimeout,只保留跳转语句即可。 - 错误分支设置了更长的延迟时间,毕竟用户需要时间阅读错误内容,方便后续修正表单问题。
内容的提问来源于stack exchange,提问作者Sarthak Parab
相关产品推荐
相关产品推荐

