cakephp更新元素

时间:2011-05-24 01:44:54

标签: ajax cakephp elements

我有一个索引视图,上面有一些元素。

索引控制器代码;

    $userID = $this->Authsome->get('id');       
$qnotes = $this->Qnote->getnotes($userID);  
$this->set('qnotes', $qnotes)
$this->render();
使用

元素添加到页面中

索引视图代码

<?php echo $this->element('lsidebar'); ?> 

现在问题是我还有一个添加控制器。

添加控制器代码

    function add() {  
    if(!empty($this->data)) {      
        unset($this->Qnote->Step->validate['qnote_id']);
        $this->Qnote->saveAll($this->data); 
        $this->Session->setFlash('New Note Template has been added.','flash_normal');


    }       
}

现在我想要实现的是,一旦我添加了Qnote,我想要更新元素('lsidebar') 为新的Qnote。

我正在使用Ajax助手。发现于http://www.cakephp.bee.pl/

此处还添加了qnote查看代码:

<?php echo $ajax->submit(
'Submit', array(
    'url' => array(
        'controller'=>'qnotes',
        'action'=>'add')

)); 

我知道这听起来像一个菜鸟问题。能有人指出我至少在正确的方向。 我已经尝试了一切我能想到的东西。我打赌解决方案很容易,我没想到

帮助:)

1 个答案:

答案 0 :(得分:0)

如果你想动态更新带有通过ajax提交的信息的侧边栏,你的ajax帖子中应该有一个“成功”选项,允许你在帖子结束(或成功)时触发特定的javascript动作。您应该编写一个小的javascript ajax函数,以便在帖子成功时重新加载侧边栏的内容。 请参阅此其他stackoverflow答案:CakePHP ajax form submit before and complete will not work for displaying animated gif