Bonjour à tous,
J'aimerai utiliser la fonction observeField mais le problème est que quand je l'utilise, toute ma page se recharge. Il me semble que ça fait la même chose lors que j'utilise tout autre fonction ajax.
Voici mon code :
Le controller :
La vue :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 class ClubsController extends AppController { var $name = 'Clubs'; var $helpers = array('Html', 'Form', 'Ajax', 'Habtm','Javascript', 'Session'); var $components = array('RequestHandler'); function index() { $this->Club->recursive = 0; $this->set('clubs', $this->paginate()); } // Méthode utilisée pour afficher la vue function rechercher_home() { $optionVilles = $this->getOptionsVilles(); $this->set('optionsVillesDepart', $optionVilles['optionsVillesDepart']); $this->set('optionsVillesDestination', $optionVilles['optionsVillesDestination']); $this->set('depart', $optionVilles['depart']); $this->set('paysDestination', $optionVilles['paysDestination']); } //Méthode pour mettre à jour les données function update_ville_select() { if(!empty($this->data['Club']['paysDestination'])) { $options = $this->requestAction('/villes/getDesc/'.$this->data['Club']['paysDestination']); }else if(!empty($this->data['paysDestination'])) { $options = $this->requestAction('/villes/getDesc/'.$this->data['paysDestination']); } $this->set(compact('options')); } }
Merci d'avance pour l'aide apportée !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 <div id="contentLayoutIntro"> <div class="searchClub"> <div class="searchClubLabel">Trouver un club de vacances</div> <div class="searchSelectForm" id="searchSelectForm"> <?php echo $form->create(null, array('url' => array('controller' => 'clubs' , 'action' => 'rechercher')))?> <?php echo $form->input('Ville de Départ', array('options' => $depart));?> <?php echo $form->input('Pays de Destination', array('id'=>'paysDestination', 'options' => $paysDestination, 'empty' => 'Selectionnez un pays de destination')) ?> <?php echo $form->label('villeDestination');?> <?php echo $form->select('villeDestination', null );?> <?php echo $ajax->observeField('paysDestination', array('url'=>'/clubs/update_ville_select', 'update'=>'ClubVilleDestination')); ?> <input type="submit" id="btnSearchSelectForm" name="btnSearchSelectForm" value="Recherche"/> <?php echo $form->end(); ?> </div> </div> </div>
Cordialement,
Onita
EDIT : J'ai l'impression que ça marche à moitié / ça met à jour qqc dans la page ensuite page blanch sans recharger la page
Partager