【问题标题】:Alerts are displayed in Chrome and Explorer, but not in Firefox警报显示在 Chrome 和资源管理器中,但不显示在 Firefox 中
【发布时间】:2012-12-04 15:40:37
【问题描述】:

我的代码可以正常工作并在 Chrome 和资源管理器中显示警报,但在 Firefox 中不显示。但是,该功能在 Firefox 中可以正常工作,但是警报没有显示或显示得很快,我无法单击“确定”按钮。我收到的任何帮助将不胜感激。对不起,我的英语不是我的母语。这是代码。警报是“警报一”和“警报二”。 '

        $.ajax({
            type: "POST",
            url: direccion,
            dataType: 'json',
            data: post,
            success: function(data) {
                document.location = direccion;
                if(data.valid == 0) {
                    alert('ALERT ONE');
                } else if(data.valid == 1) {
                    alert('ALERT TWO');
                } else {

                }
                document.location = "autenticacion.php";
            },
            error: function(xhr, ajaxOptions, thrownError) {

            }
        });

【问题讨论】:

  • 您是否在 FF 中选中了“不允许此站点显示更多警报”复选框?

标签: javascript jquery


【解决方案1】:

在回调开始时使用这一行

document.location = direccion;

任何浏览器都不应显示任何警报,因为页面应立即更改。

【讨论】:

  • @Victor 是的,请解释你为什么这样做
  • $.ajax() 将已经请求 autenticar.php,此请求完成后无需重定向到它。
  • @Víctor 是的,花点时间仔细阅读 cmets 和代码示例。
  • 请尝试理解 $.ajax() 已经完成了对 autenticar.php 的请求,然后您的代码尝试重定向到 autenticar.php,因此实际上您的代码正在请求 autenticar.php 两次。请删除代码中的document.location = direccion 行并进行测试
  • 是的!这就是问题所在!我清理了浏览器的历史并再次测试它,现在它可以工作了!非常比你。我真的很thakfull。真的!抱抱,再次感谢! =)
猜你喜欢
  • 1970-01-01
  • 2023-03-17
  • 1970-01-01
  • 1970-01-01
  • 2015-01-11
  • 2012-09-16
  • 2015-12-17
  • 2013-09-16
  • 2021-07-11
相关资源
最近更新 更多