我正在向Controller上的一个视图发出Ajax请求,但我无法发回对Ajax方法的响应。在下面的代码片段中,我正在尝试发送“hellopanda”一词,但在警报消息中,我会将数据作为对象。
查看:
$.ajax({
type: "POST",
url: "localhost/some-activity",
data: dataString,
success: function(data) {
alert( "Data is: " + data);
//do something with data
},
error: function(data){
alert( "Data is: " + data);
//do something with data
},
onComplete: function(){
}
});
控制器:
public function someActivityAction(){
//do stuff
echo "hellopanda";
}
我很确定回声是问题所在。任何有关如何对视图做出正确回应的见解都将不胜感激。
答案 0 :(得分:6)
您的网址为"localhost/some-activity"
,将其更改为"localhost/someactivity"
在你的行动
public function someactivityAction(){
//do stuff
echo "hellopanda";
exit;
}
如果要返回数组,请确保编码为
echo $this->_helper->json($yourarray);exit;
你的ajax会是这样的
$.ajax({
type: "POST",
url: "localhost/someactivity",
data: dataString,
dataType: 'json', //if you are returning array
success: function(data) {
for(int i=0;i<data.length;i++){
alert(data[i]['yourindexofarray']);
}
},
error: function(data){
alert( "Data is: " + data);
//do something with data
},
onComplete: function(){
}
});