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