0

我想通过 ajax 在我的视图中加载项目列表这是我在 lst.cpt 上的代码

<div id='benpane' class='clearfix'>
  <script type="text/javascript">
  <?php echo $ajax->remoteFunction(array(
    'url'=>array('controller'=>'benefits', 'action'=>'display'),
    'update'=>'benpane',
    'indicator'=>'benIndicator'
  )); ?>
  </script>
</div>

这是我的控制器中的第一个功能

function lst() {
        $this->paginate = array('order' => array('ben_name' => 'ASC'),'conditions' => array($this->Benefit->parseCriteria($this->passedArgs)));
        $benefit = $this->paginate('Benefit');
        $this->set('bens', $benefit);
      }

当我尝试打开视图时出现错误

Error: Call to a member function remoteFunction() on a non-object   
File: /var/www/hassportal/app/View/Benefits/lst.ctp 
Line: 14

我做错了什么?

4

2 回答 2

1

除了 Ajax Helper 已被弃用(和/或您可能没有使用 cakephp 2.x)这一事实之外,您似乎调用了错误的操作:

'action'=>'display'

应该:

'action'=>'lst'

此外,我会将代码移到应该使用来自该操作的数据更新的 DIV 之外。

于 2013-10-08T18:06:33.933 回答
0

用这个

$this->Ajax->remoteFunction

内设

$ajax->remoteFunction

前任:-

<?php echo $this->Ajax->remoteFunction(array(
    'url'=>array('controller'=>'benefits', 'action'=>'display'),
    'update'=>'benpane',
    'indicator'=>'benIndicator'
  )); ?>
于 2013-11-20T12:14:49.980 回答