我有一个广泛使用 ajax 的 Rails 应用程序。使用 jQuery。例如,其中一个模型完全由 jQuery 管理:记录是由 ajaxly 创建、更新和删除的。除了更新记录之外,一切都很好。
我做了一些测试,我发现 Firefox 中的 jQuery(Mac 上的 3.6,Windows 上的 3.5 是我测试过的)在302 重定向到相同的 URL时检测服务器的响应有问题。我在 Firebug 中得到的是:
POST localhost:3000/resources/1 -> 302 找到
获取 localhost:3000/resources/1 -> 200 OK
并且没有调用 jQuery 的 ajax 回调。既不成功,也不完整,也没有错误。但是当我创建记录并且服务器重定向到另一个 URL 时,调用“成功”回调:
POST localhost:3000/resources -> 302 找到
获取 localhost:3000/resources/1 -> 200 OK
我自己调用 $.ajax 还是使用 jquery.form 的 ajaxForm() 都没关系。
有任何想法吗?