我有一个网页,向PHP脚本发出POST请求。根据请求的结果,按钮的onclick事件将重定向到两个页面中的一个。页面无法重定向和清除URL参数
<button id="button" type="submit">Proceed</button>
...
$.post('script.php', {
key: value
}, function(result) {
if (result != null) {
document.getElementById("button").onclick = function() {
window.top.location.href = "https://example.com/page?otherkey=othervalue";
}
} else {
document.getElementById("button").onclick = function() {
window.top.location.href = "https://example.com/otherpage?otherkey=othervalue";
};
}
});
这适用于桌面浏览器很好,但在Safari浏览器在iOS(iOS上的10.3.2专门测试)在点击按钮时,页面刷新,并不会重定向到正确的网站。另外,它清除之前存在的任何URL参数。例如,如果带有按钮的页面是example.com/page?key=value
,页面将刷新并变为example.com/page?#_=_
。我试过调试和检查一个Javascript控制台,但它什么也没说。
重定向是我自己的域中的页面,但带按钮的页面已集成到Facebook应用程序页面中(如果相关)。
另外,如果我自己构建URL并尝试正常访问它,它会正常加载。我不知道是什么原因造成的,所以我不确定是否有其他相关信息值得发布,但如果有必要,我可以说更多。
这并不能解决我的问题,但它的确激发了我所想成为的解决方案。我写了另一个答案,但谢谢你的回应! :) – charlieshades
很高兴我启发了一个想法,很抱歉它没有直接解决问题 –