2010-07-07 32 views
0

我想在处理一个ajax请求(在cakephp中)时自动创建一个新的ajax请求,我怎么能够做到这一点? 我知道用户可以同时发起多个Ajax请求,但是如何在另一个Ajax请求发起时自动发起新的Ajax请求?如何在cakephp中创建多个ajax请求

下面,我打电话里面一个又一个的AJAX功能的方式,但它不工作,

echo $ajax->form(array('type' => 'post', 'options' => array('model' => 'Thing', 
      'url' => array('controller' => 'things', 'action' => 'xyz'),'update' => 'dy4', 'indicator' => 'ldng', 'loading' => ($ajax-> 
      remoteFucntion(array('url' => array('controller' => 'stories', 'action' => 
      'keep'), 'update' => 'dy3', 'frequency' => 5))))));echo $form->input('a', array('type' => 'checkbox'));echo $form->input('b', array('type' => 'checkbox')); echo $form->end('RUN'); 
+1

我不明白。你基本上是在寻求一种方法来“聆听”发出AJAX请求的事件,并且希望在发生这种情况时发出另一个请求。这与Cake而不是Javascript有什么关系?你现在怎么提出这些要求?那个有什么用? – deceze 2010-07-08 01:38:51

+1

AJAX请求只是另一个JavaScript操作。只要做就像你会做任何其他类型的函数:'function ajaxReq1(){ajaxReq2(); ajaxReq3(); }' – 2010-07-08 08:18:01

+0

我编辑了我的问题,在上面的代码中,远程函数没有每5秒钟运行一次,但是它只运行一次,如果我删除频率选项。 所以我尝试remoteTimer函数,但是当我使用remoteTimer fucntion,脚本的一些代码去脚本标记之外,我看到在网页.... – texpert 2010-07-08 16:06:09

回答

0

转到CakePHP coockbook,并期待在回拨选项。选择'之前','加载','完成'或任何适合你的。您可能必须在JavaScript中为这些参数编写ajax。

+0

我已编辑我的问题,在上面的代码中,远程函数没有每5秒钟运行一次,但它只运行一次,如果我删除频率选项。 所以我尝试了remoteTimer函数,但是当我使用remoteTimer函数时,脚本的一些代码会出现在脚本标记之外,并且我在网页中看到了...... – texpert 2010-07-08 16:07:10

+0

您粘贴的蛋糕代码似乎在修复打印错误后在'remoteFunction'中(至少在1.2中)。 – Nebril 2010-07-08 21:23:23

+0

我刚刚注意到'频率'的事情。 'RemoteTimer'似乎不是通过...没有调整源,它不能作为数组中的选项传递。 – Nebril 2010-07-08 21:43:50

0

只需链接JavaScript调用。

+0

我编辑了我的问题,在上面的代码中,远程函数没有每5秒运行一次,但是它只运行一次,如果我删除频率选项。 所以我尝试remoteTimer函数,但是当我使用remoteTimer fucntion时,脚本的一些代码会在脚本标记之外,并且我在网页中看到.... – texpert 2010-07-08 16:07:34