Jquery 对我的Zend控制器的Ajax调用
我对zend框架有点陌生。尝试对我的控制器/indexAction()执行Ajax调用时,我收到错误警报。 有人能帮忙吗?我试图从其他帖子中得到答案,但无法得到正确的答案 我的JS文件带有Ajax操作Jquery 对我的Zend控制器的Ajax调用,jquery,ajax,zend-framework,Jquery,Ajax,Zend Framework,我对zend框架有点陌生。尝试对我的控制器/indexAction()执行Ajax调用时,我收到错误警报。 有人能帮忙吗?我试图从其他帖子中得到答案,但无法得到正确的答案 我的JS文件带有Ajax操作 $('.libox')。单击(函数(){ var contentPanelId=$(this.attr(“id”); 警报(contentPanelId); $.ajax({ url:“public_html/application/controllers/IndexController.php
$('.libox')。单击(函数(){
var contentPanelId=$(this.attr(“id”);
警报(contentPanelId);
$.ajax({
url:“public_html/application/controllers/IndexController.php”,
类型:“POST”,
数据类型:“json”,
数据:contentPanelId,
成功:功能(数据){
警报(数据);
},
错误:函数(){
警报(“失败:(”);
}
});
});
我更改了您的jquery代码。请使用以下命令:
$('.libox').click(function () {
var contentPanelId = $(this).attr("id");
alert(contentPanelId);
$.ajax({
url: "/index/index",
type: "POST",
dataType: 'json',
data: contentPanelId,
success: function (data) {
alert(data);
},
error: function () {
alert("fail :(");
}
});
});
ajax调用中的URL是错误的。它不应该以扩展名结尾。您只需要提到控制器名称和操作,如“`URL:“Index/Index/”@SameerK-My Index/action位于我的ZF的“public_html/application/controllers/IndexController.php”中。我将URL作为“Index/Index”给出。我仍然得到相同的错误。URL中的控制器名称需要以大写字母开头,所以它的“索引/索引”。除了这两个问题-1)JS文件位于哪里??2) 是否在application.ini文件中配置了控制器路径??3) 是否在生成的
404页面中请求URL未找到
错误??请查找我的响应,1)public/js 2)Yes 3)No,我没有收到此问题。您能否共享该配置,并在发出ajax请求时,在控制器->init函数中初始化AjaxContext
。如果init()函数不存在,则可以添加<代码>公共函数init(){parent::init();$ajaxContext=$this->\u helper->getHelper('ajaxContext');$ajaxContext->addActionContext('index','html')->initContext()}。如果控制器返回json响应,则将html
替换为json