【问题标题】:Codeigniter Controller name doesn't work with ajaxCodeigniter 控制器名称不适用于 ajax
【发布时间】:2015-06-26 20:24:49
【问题描述】:

我有一个小的 Codeigniter 应用程序。我有一个名为“供应商”的控制器,它可以完美地工作,AJAX 调用等等。 但是,我的第二个控制器名称“Ad”似乎不适用于 jQuery AJAX。 每次进行 AJAX 调用时,都会调用错误处理程序。 错误输出为:

statusText

"[Exception... "<no message>"  nsresult: "0x805e0006 (<unknown>)"  location: "JS frame :: http://localhost/sbkch/backend/backend/assets/js/plugins/pace/pace.min.js :: b/a/a.open :: line 2"  data: no]"

但是,一旦我将控制器的名称更改为“Adthisisalongname”,事情就会开始按预期工作。 我试着到处玩并将我的控制器重命名为“广告”。 AJAX 停止工作。其他方法工作正常(索引等)。 然后我将名称更改为 Adendor,AJAX 又开始工作了。 似乎是什么问题? Codeigniter 中的“广告”和“广告”是保留关键字吗? 我找不到任何与此相关的文档。 请注意,当 AJAX 调用不起作用时,它甚至不会在 Firebug 中显示为“控制台”选项卡中向服务器发出的请求。 另外,我没有使用form_open() 函数。

【问题讨论】:

  • 如果没有请求,则问题出在客户端,而不是在服务器框架中
  • 为什么更改Controller的名称会修复它?
  • 类名应该和文件名一致,例如。 class myfoo extends CI_Controller { ..code here... },那么控制器应该是 myfoo.php
  • 是的,我知道。仍然没有那样工作。

标签: php jquery ajax codeigniter


【解决方案1】:

客户端浏览器出现此问题是因为它们阻止副词使用 ajax 并劫持用户数据,并且与 CodeigniterjQuery AJAX

无关

【讨论】:

  • 你能引用一些资料吗?
  • 我在我的一个项目中意识到,我认为你找不到源代码。这只是您问题的合理原因!
  • 仍然需要数据来接受作为答案,伙计。 :) 明天在工作中试试这个(我们在工作中使用 ZF2)并让你知道。
猜你喜欢
  • 2011-10-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-04-07
  • 2015-02-09
  • 1970-01-01
  • 2015-11-02
  • 1970-01-01
相关资源
最近更新 更多