Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 10-06-2013 11:33:52

pestak
Nouveau membre
Date d'inscription: 10-06-2013
Messages: 1

Jquery et liste déroulante

Bonjour,

Je débute avec Zend et j'essaye de reprendre un développement en php pour le mettre à sauce MVC.
J'ai une liste déroulante contenant les régions de France. A la sélection d’une région, je dois mette à jour la liste déroulantes des communes et des zones IFN. Malheureusement à la place de m'afficher la liste déroulante des communes, j'obtiens le chargement de la page entière dans mon div.
Du coup, j'ai fait des petits tests. J'ai ajouté une alerte pour voir si je récupérai bien l'identifiant de la liste déroulante région et cela fonctionne. Et sur mon autre liste déroulante (zones IFN), j'ai testé l'affichage d'un texte et là il s'affiche correctement.

J'ai beau faire le tour des forums, je ne vois pas mon erreur (qui doit être énorme à mon avis). Pouvez-vous m'aider?

Merci d'avance

ajax.js

Code:

function afficheCommune()
{
    sel = document.getElementById('departement_id');
    str = sel.options[sel.selectedIndex].value;
    alert("valeur ! "+str);
    $.ajax({
        type: "POST",
        url: "cri/ajaxaffichecommune",
        data : "val=" + str,
        success: function(retour){
            $('#liste_commune').html(retour);
        } ,
        error: function(msg){
            alert("ERREUR : "+msg);
        }
    });
}

function afficheIFN()
{
    $.ajax({
        type: "POST",
        url: "cri/ajaxafficheifn",
        data : "val=" + $(departement_id).val(),
        success: function(){
            $('#liste_ifn').html("tutu...");
        } ,
        error: function(msg){
            alert("erreur : "+msg);
        }
    });
}

ajaxaffichecommune.phtml

Code:

valeur : <?php echo $this->val; ?>
<select name="commune_id" id="commune_id" size="1">
    <option value="">S&eacute;lectionner la commune</option>
    <?php foreach($this->ajaxcommunes as $commune): ?>
      <option value="<?php echo $commune['id']; ?>"><?php echo $commune['nom']; ?></option>
    <?php endforeach; ?>
</select>

CriController.php

Code:

public function ajaxaffichecommuneAction()
    {
        //$this->_helper->viewRenderer->setNoRender();
        $this->_helper->layout->disableLayout('');
        if(isset($_POST['val'])) {
            $val = $_POST['val'];
            $commune = new Application_Model_DbTable_Commune();
            $select = $commune->select()
                           ->from((array('c' => 'communes')),
                            array('id', 'nom'))
                           ->where("c.actif=true and c.departement_id='?'",$val)
                           ->order('c.nom ASC');
            $select->setIntegrityCheck(false);
            $this->view->val = $val;
            $this->view->ajaxcommunes = $commune->fetchAll($select)->toArray();
        }
        else
        {
            $this->view->val = "ERREUR";
        }
    }

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 Rickard Andersson
Traduction par punbb.fr

Graphisme réalisé par l'agence Rodolphe Eveilleau
Développement par Kitpages