0

遇到一个困扰我 2 天的问题。我的后端使用 codeigniter,前端使用 jquery。直到昨天,我几乎所有的控制器功能都是通过 jquery $.ajax 加载的,没有任何问题。

出于某种随机原因,每当我在名为“广告”的控制器上执行 ajax 查询时,它都会失败,但是如果我从字面上复制/粘贴相同的 ajax 查询并且只将 url 更改为另一个控制器,它就可以正常工作。该问题仅发生在 chrome 中,并且相同的查询在 Firefox 和 ie 中运行良好。

这是代码:

$("a").on("click", function(a){
  a.preventDefault();
  var path = $(this).attr("href");

  $.ajax({
    Type: "get",
    dataType: "html",
    url: path,
    success:function(result){
      $(".contentgrid").hide().html(result).fadeIn("fast");
    }
  })
})

这会在 chrome 中引发以下错误:

send                   jquery.min.js:2 
v.extend.ajax          jquery.min.js:2 
(anonymous function)   main.js:743 
v.event.dispatch       jquery.min.js:2 
o.handle.u

然而,如果我粘贴上面的 ajax 请求并手动输入一些其他控制器/函数名称,它就可以正常工作。如果手动键入名为“广告”的控制器,它将失败。同样,这在 IE 和 Firefox 中都可以正常工作。我完全迷路了。感谢任何可以帮助我的人。

4

2 回答 2

1

抱歉,我没有发布修复程序。这不起作用的原因是因为“AdBlocker”扩展阻止了 ajax 中带有“广告”的任何内容。

于 2013-11-20T20:16:08.920 回答
0

我的猜测是 HTML 不是完全有效的 - 尝试使用.text()而不是.html()检查发生了什么,如果有效,请修复无效的 HTML。

于 2013-05-28T04:13:03.157 回答