【发布时间】:2015-05-18 20:30:22
【问题描述】:
我的 cakephp(2.5) 网站的“事件”(index, event_ajax) 控制器中有 2 个函数。我正在尝试通过使用 ajax 调用“event_ajax”函数将 HTML 块加载到“index.ctp”页面。当我调用这个函数时,它什么也没显示。查看 firebug 中的“net”选项卡,它显示内部服务器错误,“net”->“Response”选项卡我可以看到整个布局已加载。
在这种情况下我有点困惑,任何人都可以对以下问题进行一些解释吗???在此先感谢:)
- 是否可以使用 ajax 函数在同一个控制器中调用操作??
- 当 '$this->layout' 设置为 NULL 时,'Response' 选项卡如何显示布局??
- 当输入 url 'example.com/events/event_ajax' 时,输出数据仍然是 '$this->autoRender=false'。怎么会这样??
这是我的“event_ajax”操作。
public function event_ajax($x=1) {
$this->layout = NULL;
$this->autoRender = false ;
$contName = $this->Page->conName($x);
$latestContEvents = $this->Page->latestContEvent($x);
$internal = '';
if (!empty($latestContEvents)){
foreach ($latestContEvents AS $latestContEvent){
$internal .= '<li class="pull-left"> <div class="content-wrapper">'..... //do something
}
else {
$internal = '<p> No events found for this continent</p>';
}
$ContEvents = '<div class="carousel events-location-carousel">'.$internal.'</div> ';
return $ContEvents;
// return json_encode($ContEvents);
}
【问题讨论】: