【问题标题】:Javascript Alert box not displaying on FirefoxFirefox 上未显示 Javascript 警报框
【发布时间】:2010-02-11 08:18:42
【问题描述】:

好的, 所以我有这个脚本,它适用于 IE,但不适用于 Firefox。所以我想知道是否有人遇到过这个问题,也许有解决方案。

$.ajax({ 
        type    : "POST",
        url     : "../php/insertUser.php",
        data    : dataString,
        success : function(msg, status)
        {
            var reply = parseInt(msg);
            if(reply==1)
            {
                alert('Email address already exists in our members database.\n'+
                       'Please try another   address and then submit it again!');
            }
            else if(reply==2)
            { 
            }
            else if(reply==0)
            {
                $('#pForm').hide('fast');
                $('#accForm').show('slow');
            }
       }
  });      

因此,警报在 IE 上运行良好,但我无法让它们在 Firefox(3.6 或更早版本)上运行。关于为什么会发生这种情况的任何想法?

编辑:感谢 TJ 将我介绍给 Firebug,现在我发现警报不是问题所在。问题在于 Firefox 没有读取“success:”子句。有什么想法吗?

【问题讨论】:

  • 您可能希望使用空格/制表符对其进行格式化,以便我们阅读
  • 如果'不阅读“成功:”子句'意味着你在'var reply'行设置了一个断点并且它没有被命中,你应该进入$ .ajax函数并检查为什么 jQuery 认为请求不成功。或者您可以将实时 URL 发布到 php 脚本,然后有人可能会为您进行调试。在没有任何信息的情况下试图猜测是很困难的。

标签: javascript firefox alerts


【解决方案1】:

就人们所见,警报没有任何问题(一旦我重新格式化代码以使其可读!;-))。我的建议是获取Firebug 并单步执行代码,看看哪里出了问题。例如,您没有看到警报的最可能原因是 Ajax 调用失败,或者您从未通过解析 msg 获得 reply = 1

【讨论】:

  • 让我烦恼的是,它在 IE 上运行良好。这告诉我 Ajax 正在解析“msg”。
  • 感谢 Firebug,现在我看到 FF 完全跳过了“成功”子句。有什么想法吗?
  • @Uran:是的,这意味着结果在一个与另一个之间是不同的。使用 Firebug 浏览它可能会帮助您弄清楚为什么会出现这种情况。 :-) 浏览器之间存在足够的差异,以至于这种事情一直出现。祝你好运。
猜你喜欢
  • 1970-01-01
  • 2014-02-21
  • 2018-06-26
  • 2023-03-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-11-17
相关资源
最近更新 更多