JS页面重新指导按钮提交不使用IE或Edge



我有一个用于数据输入的字段集。页面上的更改完成后,使用提交按钮来保存更改并将其重定向回索引页。我的问题是,基于JS的重定向返回主索引页面在IE或Edge浏览器中不起作用。输入字段可以保存正常。我已经尝试了我所知道的一切,并且可以找到在线发布的所有内容而没有成功。

这是提交按钮代码:

<input type="button" name="Done" class="saveField action-button" value="Submit" />

这是按钮JS提交代码:

$(".submit").click(function() {
saveDetails();
})

,这是RETHECT返回索引页面(admin.php(的Savedetails代码:

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或Edge中不起作用的重定向。重定向与Safari,Chrome和Firefox一起工作正常。

任何建议都将不胜感激。

尝试以下:

window.location.assign('/admin.php');

希望它有帮助。

已解决。window.location.sign重定向没有错。问题在于机器 浏览器速度很慢,并且先前的位置尚未完成...当然JS执行是异步的。

我的修复程序就是简单地删除位置。它是为过时的保存按钮调用而编写的,该按钮调用重新加载了页面以验证所有输入字段是否已更新。新的提交按钮将更新字段,并将用户返回表单索引页面,因此位置.reload毫无意义/过时。

我在上面的代码中评论了该行,因此这是一个工作示例。

最新更新