[英]js page re-direct on button submit not working with IE or Edge
我有一个数据输入的字段集。 当页面上的更改完成后,将使用提交按钮保存更改并重定向回索引页面。 我的问题是基于js的重定向回主索引页在IE或Edge浏览器中不起作用。 输入字段保存正常。 我已经尝试了我所知道的一切以及我在网上发布的所有内容都没有成功。
这是提交按钮代码:
<input type="button" name="Done" class="saveField action-button" value="Submit" />
这是按钮js提交代码:
$(".submit").click(function() {
saveDetails();
})
这是saveDetails代码,重定向回到索引页面(admin.php):
function saveDetails() {
form = "msform";
$.ajax({
url : 'classes/Process.php?page=saveDetails',
async : true,
type : 'post',
data : $('form#' + form).serialize(),
success : function(data) {
//location.reload();
$("#recstatus").val("edit");
window.location.assign("admin.php");
},
fail : function() {
// showPleaseWait(false);
},
error : function(XMLHttpRequest, textStatus, errorThrown) {
// showPleaseWait(false);
}
});
}
除重定向外,一切正常。 这是我到目前为止所尝试的:
window.location.assign("admin.php");
window.location.replace("admin.php");
location.assign = "admin.php";
location.replace = "admin.php";
location.href = "admin.php";
window.location.assign('/admin.php');
window.location.assign('FULL HTTP ADDRESS URL');
如前所述,输入数据处理正常,只有重定向在IE11或边缘不起作用。 并且重定向适用于Safari,Chrome和Firefox。
任何建议将非常感谢。
尝试这个:
window.location.assign('/admin.php');
希望能帮助到你。
解决了。 window.location.assign重定向没有任何问题。 问题是机器+浏览器很慢,之前的location.reload还没有完成......当然js执行是异步的。
对我来说,修复是简单地删除location.reload调用。 它是为过时的保存按钮调用编写的,该调用重新加载页面以验证所有输入字段是否已更新。 新的提交按钮更新字段并将用户返回到表单索引页面,因此location.reload是无意义/过时的。
我在上面的代码中评论了这一行,所以现在这是一个有效的例子。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.