Ric*_*ald 64 javascript refresh postdata reload
我想使用以下命令重新加载页面:
window.location.reload(true);
Run Code Online (Sandbox Code Playgroud)
但是我收到POSTDATA警告,因为刷新函数想要重新发送以前的POST表单数据.如何在没有此警告的情况下刷新页面?
更新:我无法控制项目!我无法解决POST本身!
Rex*_*x M 114
没有警告就无法刷新; refresh指示浏览器重复上一个操作.如果重复上一个操作涉及重新提交数据,则由浏览器选择是否警告用户.
您可以通过以下操作重新导航到具有新会话的同一页面:
window.location = window.location.href;
Run Code Online (Sandbox Code Playgroud)
Sam*_*ler 59
只是更改window.locationJavaScript是危险的,因为用户仍然可以点击后退按钮并重新提交帖子,这可能会产生意外结果(例如重复购买).PRG是一个更好的解决方案
为了避免这个问题,许多Web应用程序使用PRG模式 - 而不是直接返回HTML页面,POST操作返回重定向命令(使用HTTP 303响应代码(有时是302)和HTTP"Location"响应头),指示浏览器使用HTTP GET请求加载不同的页面.然后可以安全地将结果页面加入书签或重新加载,而不会产生意外的副作用.
Rob*_*Rob 20
我有一些问题,锚/ hash-urls(包括#)没有使用Rex的解决方案重新加载...
所以我最终删除了哈希部分:
window.location = window.location.href.split("#")[0];
Run Code Online (Sandbox Code Playgroud)
小智 12
要绕过POST警告,您必须使用完整URL重新加载页面.工作良好.
window.location.href = window.location.protocol +'//'+ window.location.host + window.location.pathname;
Run Code Online (Sandbox Code Playgroud)
小智 6
您可以使用 JavaScript:
window.location.assign(document.URL);
Run Code Online (Sandbox Code Playgroud)
在 Firefox 和 Chrome 上为我工作
检查此链接:http : //www.codeproject.com/Tips/433399/PRG-Pattern-Post-Redirect-Get
| 归档时间: |
|
| 查看次数: |
129863 次 |
| 最近记录: |