voici la vue au il y a les deux listes deroulantes : <li> <p class="labelFormulaire"><font class="starColor">*</font><?php echo $translateH->getTranslatedText($this->name, 'formulaire', 'choixBureau', $parameters); ?> :</p> <p> <?php echo $form->input('Language.code', array('type' => 'hidden', 'value'=> $cookieABCLiv['Language']['code']))?> <?php //liste de bureaux echo $form->select( 'Payment.office_id', $officeH->getOfficesList($offices), //appel du helper pour construire la liste des options concatenees null, $optionsInputFront, false ); ?><p> </li> <li> <p class="labelFormulaire"><font class="starColor">*</font><?php echo $translateH->getTranslatedText($this->name, 'formulaire', 'choixDom', $parameters); ?> :</p> <p id="listeDomiciliation"> <?php //liste des type de domiciliation echo $form->input( 'Payment.tdom_id', am($optionsInputFront, array( 'default' => isset($this->data['Payment']['tdom_id']) ? $this->data['Payment']['tdom_id'] : null, 'options' => $listeDomiciliation, 'empty' => '-- Domiciliation --')) );
?> <p> </li> quand je selectionne la premiere liste , cela me met à jour la seconde. / *------------------------------------------------------------------------------------------------------------------------------------- */ Le code JQuery : $("#PaymentOfficeId").change( function () { $.post("getDomiciliationFromOfficeAjax", {id: $ ("#PaymentOfficeId").val(), lang : $("#LanguageCode").val()}, function (data) { $("#listeDomiciliation").html(data)} ); $("#listeDomiciliation").show('slow'); }); / *------------------------------------------------------------------------------------------------------------------------------- */ la fonction dans le controller Payments : (qui appelle la vue get_domiciliation_from_office_ajax.ctp) function getDomiciliationFromOfficeAjax() { $this->layout = 'ajax'; $iOfficeId = intval($this->params['form']['id']); $sLang = $this->params['form']['lang']; $aListeDom = array(); if(!empty($iOfficeId)) { $aCondQuery = array( 'conditions' => array( 'OfficesTDom.etat' => 1, 'OfficesTDom.office_id' => $iOfficeId), 'fields' => 'TDom.title_fr', 'order' => 'OfficesTDom.tDom_id', 'recursive' => 0 ); $aListeDom = $this->OfficesTDom->find('list', $aCondQuery); } $this->set('listeDomiciliation', $aListeDom); $this->render(); } voila pour les elements.. comment cakephp fait pour appeler directement la fonction dans le controller (cf javascript : $.post ("getDomiciliationFromOfficeAjax" .... ) d'habitude ça le fait automatiquement : http://127.0.0.1/monsite.com/payments/getDomiciliationFromOfficeAjax et qu On 3 fév, 13:56, lion...@free.fr wrote: > bonjour, > > Il nous manque un certain nombre d'éléments. > Peux-tu nous donner le code de la fonction ajax ? --~--~---------~--~----~------------~-------~--~----~ Groupe "Cakephp-fr". Adresse : cakephp-fr@googlegroups.com Pour résilier : cakephp-fr-unsubscr...@googlegroups.com Pour les options : http://groups.google.com/group/cakephp-fr?hl=fr -~----------~----~----~----~------~----~------~--~---