Salut,
Je dispose d'une vue avec un formulaire, ce formulaire est composé 3 listes déroulantes.
Je voudrais lors du clique sur l'une des listes déroulantes, effectuer une requête ajax qui récupère le prix en bdd puis l'affiche dans un label.
Dans ma vue j'ai donc ajouté :
<?php
echo $this->Js->get('#foo')->event('click',$this->Js->request(array('action' => 'test'),array('async' => true, 'update' => '#jsResponse')));
?>
Mon problème est le suivant: Comment envoyer les valeur des listes déroulantes au controller ?
Sachant que dans le controller un
<?php $this->request->data ?>
me renvoi un tableau vide.
Après ce problème, j'ai continué mes recherches et j'ai trouvé une solution, en faite il suffit de faire
echo $this->Js->get('#foo')->event('click',$this->Js->request(array('action' => 'test'),array('async' => true,'dataExpression' => true, 'update' => '#jsResponse','method' => 'post','data' => 'jQuery("#SequenceAdminAddForm").serialize()')));
echo $this->Js->writeBuffer();
'data' => 'jQuery("#SequenceAdminAddForm").serialize()' : qui me permet de créer un tableau de donnée pour l'id correspondant à mon formulaire et ainsi de l'envoyer au controller.
Ne pas oublier de mettre 'dataExpression' => true car sinon votre votre data sera pris comme une chaine de caractére.