2010-07-07 13 views
0

Je veux faire une nouvelle requête ajax automatiquement pendant qu'une requête ajax est en cours de traitement (dans cakephp), comment puis-je être en mesure de faire cela? Je sais que l'utilisateur peut lancer plusieurs requêtes ajax simultanément, mais comment puis-je lancer une nouvelle requête ajax automatiquement lorsqu'une autre requête ajax est faite?comment faire plusieurs demandes ajax dans cakephp

ci-dessous est le chemin, je appelle une fonction ajax dans un autre, mais ce ne fonctionne pas,

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

Je ne comprends pas. Vous demandez essentiellement un moyen d '"écouter" l'événement de faire une demande AJAX et souhaitez faire une autre requête chaque fois que cela se produit? Qu'est-ce que cela a à voir avec Cake, au lieu de Javascript? Comment faites-vous ces demandes maintenant? Qu'est-ce que c'est? – deceze

+1

Une requête AJAX est juste une autre opération JavaScript. Faites-le comme si vous utilisiez n'importe quel autre type de fonction: 'function ajaxReq1() {ajaxReq2(); ajaxReq3(); } ' –

+0

J'ai édité ma question, dans le code ci-dessus, la fonction distante ne fonctionne pas toutes les 5 secondes, mais elle ne s'exécute qu'une seule fois si je supprime l'option de fréquence. J'ai donc essayé la fonction remoteTimer, mais quand j'utilise remoteTimer fucntion, du code du script sort du script et je vois ça dans la page web .... – texpert

Répondre

0

Aller à CakePHP coockbook et examiner les options de rappel. Choisissez «avant», «chargement», «complet» ou tout ce qui vous convient. Vous devrez probablement écrire ajax en javascript pour ces paramètres.

+0

J'ai modifié ma question, dans le code ci-dessus, la télécommande La fonction ne s'exécute pas toutes les 5 secondes, mais elle ne s'exécute qu'une fois si je supprime l'option de fréquence. J'ai donc essayé la fonction remoteTimer, mais quand j'utilise remoteTimer fucntion, du code du script sort du script et je vois ça dans la page web .... – texpert

+0

Le code du gâteau que vous avez collé semble fonctionner après avoir corrigé la faute de frappe dans 'remoteFunction' (au moins dans 1.2). – Nebril

+0

Je viens de remarquer la chose "fréquence". 'RemoteTimer' ne semble pas aller jusqu'au bout ... Sans modifier les sources, il ne peut pas être passé en option dans le tableau. – Nebril

0

Lancez simplement les appels javascript.

+0

J'ai édité ma question, dans le code ci-dessus, la fonction distante ne fonctionne pas toutes les 5 secondes, mais elle ne s'exécute qu'une seule fois si je supprime l'option de fréquence. J'ai donc essayé la fonction remoteTimer, mais quand j'utilise remoteTimer fucntion, du code du script sort du script et je le vois sur la page web .... – texpert