Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 17-06-2014 22:55:05

ilyas09
Membre
Date d'inscription: 02-07-2009
Messages: 29

Lier deux listes dans un formulaire

bonjour. j'ai un formulaire qui contient deux listes que je veux liées. Une affiche les filières et une autre qui affiche les établissements (efp) où on pourra trouvé ces filières.
Voici mon code javascript :

Code:

$("select[name='filiere']").change(function(){
    $.ajax({
        type: 'POST',
        url: '/entreprise/laureat/efp',
        data: { filiere : this.value },
        dataType: 'json',
        success:function(data){
            $efp.empty(); 
            $.each(data, function(index, value) {
                        $efp.append('<option value="'+ index +'">'+ value +'</option>');
                    });
        }
    });    
});

Pour le controller :

Code:

public function EfpAction()
{
          $requete = $this->getRequest();
        
        $filiere = $this->params()->fromPost('filiere');
 
        $efps = $this->getDiplomeTable()->getEFP($filiere);var_dump($efps);
        return new JsonModel(array(
            'status' => 'ok',
            'message' => '',
            'data' => $efps
        ));
}

Quand je change de filière j'obtiens rien. Qu'est ce que j'ai oublié ?

Dernière modification par ilyas09 (17-06-2014 22:56:34)

Hors ligne

 

#2 17-06-2014 23:08:31

flobrflo
Membre
Lieu: Marseille
Date d'inscription: 26-04-2013
Messages: 376

Re: Lier deux listes dans un formulaire

Hello,
Je suis pas sur que ton $requete te serve à grand chose, mais tu a peu être résumé le code un peu vite wink

Pour retourner du json, je te conseil d'utiliser la class Response de ZF2
http://framework.zend.com/manual/2.0/en … ponse.html

bon après chacun ses techniques ^^

Du coup, ici c'est un forum zf2 il risque de pas trop y avoir de réponse avec du js.
Néanmoins vais essayer xD

Vérifie que la variable filiere que tu passe en ajax est bonne.

Code:

[lang=php]
//je verrais plus ça :
filiere : $(this).val()

Je sais pas ce qu'il y a dans ton $efp, mais en général en jquery on évite de mettre un $ devant un nom de variable pour éviter les confusions et il faudra à un moment que tu l'ajoute à ta page.

sinon.. il faudrais voir si ta fonction getEFP est bonne.

Voila j'en ai pas plus avec ce que tu nous a montré ^^

Hors ligne

 

#3 18-06-2014 10:26:24

Orkin
Administrateur
Lieu: Paris
Date d'inscription: 09-12-2011
Messages: 1253

Re: Lier deux listes dans un formulaire

Salut, dans le ZF2 le JsonModel te permet de retourner du json il faut bien penser à activer la JsonStrategy dans la config.

Vérifies que $filiere est bien rempli et là l'objet request te sert effectivement à rien.

Non justement l’intérêt de mettre un $ devant un nom de variable ça permet de savoir si la variable contient un objet jQuery ou non wink

Hors ligne

 

#4 18-06-2014 14:51:01

flobrflo
Membre
Lieu: Marseille
Date d'inscription: 26-04-2013
Messages: 376

Re: Lier deux listes dans un formulaire

Ah oki,
je l'aurais pas vu comme ça, je trouve ça plus perturbant qu'autre chose.

Comme je disais chacun sa technique lol

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