Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/421.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
是否可以使用Javascript通过Location:header停止浏览器重定向_Javascript_Jquery_Redirect - Fatal编程技术网

是否可以使用Javascript通过Location:header停止浏览器重定向

是否可以使用Javascript通过Location:header停止浏览器重定向,javascript,jquery,redirect,Javascript,Jquery,Redirect,我有一个由PHP处理的表单,通过使用位置:标题将访问者重定向到第三方支付系统。表单处理速度很快,但当涉及到支付系统(Paypal)时,建立HTTPS连接和完成重定向需要3-5秒 我试图通过显示一个带有“请等待”消息的弹出窗口(JQuery Colorbox插件)来改善访问者体验,如下所示: $('a.submit').click(function(event) { event.preventDefault(); $(this).colorbox({ href: '

我有一个由PHP处理的表单,通过使用
位置:
标题将访问者重定向到第三方支付系统。表单处理速度很快,但当涉及到支付系统(Paypal)时,建立HTTPS连接和完成重定向需要3-5秒

我试图通过显示一个带有“请等待”消息的弹出窗口(JQuery Colorbox插件)来改善访问者体验,如下所示:

$('a.submit').click(function(event) {
    event.preventDefault();
    $(this).colorbox({
        href: '#order_redirect',
        title: 'Sending data to a payment system',
        inline: true,
        fixed: true
    });
    $(this).closest('form').submit();
});

Colorbox的默认行为是,您可以按
Esc
并关闭弹出窗口。我想让用户这样做,并通过回调函数停止重定向(Javascript一直在工作)。可能吗?浏览器实际收到标题后可能需要几秒钟。

我很难测试这是否会停止重定向,但这应该是一个好的开始

$('a.submit').click(function(event) {
    event.preventDefault();
    $(this).colorbox({
        href: '#order_redirect',
        title: 'Sending data to a payment system',
        inline: true,
        fixed: true,
        onClosed:function() {
            history.go(-1);
        }
    });
    $(this).closest('form').submit();
});
通过回调函数停止重定向

我认为这是不可能的。您最好将位置更改回当前页面或使用location.reload()。但是,如果您通过ajax提交表单,则可以中止该表单: