我有一个包含两个页面的网站:带有表单和提交按钮的页面A;页面B,显示基于来自页面A的数据的计算结果。
我想用POST提交表单数据,以便我不能使用$ .post或其他;
我不能使用document.location.replace('ULRPageB?param1 = value1& ...& paramN = valueN'),因为必须从查询字符串中隐藏参数。
但我必须确保如果用户点击页面B中的浏览器BACK按钮,他会返回两页,而不只是一页。
这些假设无法修改:换句话说,问题是:
存在一种方法来对servlet执行GET而不是AJAX,替换history:是document.location.replace。
对于替换历史记录的servlet,存在一种等效的方式来执行POST而不是AJAX吗?
答案 0 :(得分:1)
这使得后退按钮的行为更加用户友好,因为它没有返回到接受POST的页面(因此没有“POST数据已过期”警告并且没有意外的重复提交)。相反,后退按钮会返回显示表单的页面。
在这种情况下,后退按钮在技术上可以追溯到两页。如果你想进一步返回一页:不要这样做,它会让你的用户感到不安。