Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
bonjour a tous , pardonnez moi de vous dérangez , j'ai un problème avec ajax et zend , je voudrais après le changement dans un select(ville) que le deuxième select(quartier) se mette a jour , cependant d’après se que j'ai fais rien ne se déclenche dans $.ajax ,SVP aidez moi je bloque dessus depuis une semaine ,voila mon code
dans mon controlleur :
public function indexAction() { $form = new LocalisationForm(); $this->view->form = $form; } public function getdataAction() { if ($this->_request->isPost()) { $ville = $this->_request->getParam('id'); $this->_helper->layout->disableLayout(); $this->_helper->viewRenderer->setNoRender(true); $this->_helper->viewRenderer->setNeverRender(true); $quarter = new Quarter(); $list=$quarter->getQuarter($ville); $this->_helper->json($list); } }
dans mon index.phtml :
<div class="formulaire"> <center><?php echo $this->form;?> </center> <script type="text/javascript"> $(document).ready(function() { $("select#ville").change(function(){ id = $("select#ville").val(); $.ajax({ type: "POST", url: "/index/getdata/id/"+id, dataType: "json", success: function(response){ var obj = document.getElementById('quarter'); var optionData = response; //obj.options.length = null; alert(obj); i=1; for (key in response) { alert('cle:' + key + ' - valeur: ' + optionData[key]); obj.options[i] = new Option(optionData[key],key); i++; } } }); return false; })}); </script> </div>
et dans mon modele quarter je fait comme ceci :
public function getQuarter($id) { $select = $this->select (); $select->from ('quarter') ->where ('City_cityId = '.$id) ; $rows=$this->fetchAll ( $select ); $options = array(); foreach ($rows as $row) { $options[$row->id] = $row->name; } return $options; }
N'hésitez pas a m'aider SVP je sais pas si c'est mon $.ajax qui n'est pas reconnue ou quelque chose d'autre , j'ai vraiment besoin d'aide , merci d'avance
Dernière modification par nathalie90 (04-06-2012 17:21:03)
Hors ligne