IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP.NET MVC Discussion :

Cascading DropDownListFor ViewBag


Sujet :

ASP.NET MVC

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Avril 2008
    Messages
    279
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 279
    Par défaut Cascading DropDownListFor ViewBag
    Bonjour,

    Après plusieurs recherches, je n'arrive toujours pas à alimenter ma seconde Dropdownlistfor.

    En effet j'ai trouvé que des exemples en utilisant les dropdownlist et non dropdowlistFOR car j'utilise un viewbag dont je récupère les données dans ma base.

    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
     
                        <div class="control-group">
                            <div class="editor-label">
                                @Html.LabelFor(model => model.Groupe)
                            </div>
                            <div class="editor-field">
                                @Html.DropDownListFor(model => model.Groupe, ViewBag.ListGroupe as IEnumerable<SelectListItem>, new { @id = "Groupe" })
                            </div>
                        </div>
     
                        <div class="control-group">
                            <div class="editor-label">
                                @Html.LabelFor(model => model.Reference)
                            </div>
                            <div class="editor-field">
                                @Html.DropDownListFor(model => model.Reference, ViewBag.ListReference as IEnumerable<SelectListItem>, new { @id = "Reference" })
                            </div>
                        </div>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
            private void PopulateDropDownLisGroupe()
            {
                ViewBag.ListGroupe = new SelectList(repMateriel.GetListGroupe());
            }
     
            private void PopulateDropDownListReference(string groupe)
            {
                ViewBag.ListReference = new SelectList(repMateriel.GetListReference(groupe), "PKIdMateriel", "Reference");
            }
    Je sais que je dois utiliser du javascript, j'ai réussi à récupérer la valeur de la première dropdowlistfor
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <script type="text/javascript">
     
        $(document).ready(function () {
     
            $('#Groupe').change(function () {
                var id = $("#Groupe :selected").val();
                alert(id);
            });
     
        });
    </script>
    MErci

  2. #2
    Expert confirmé
    Avatar de Immobilis
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    6 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 559
    Par défaut
    Salut,

    Tu veux dire que tu essaye de faire des listes liées?

    A+
    "Winter is coming" (ma nouvelle page d'accueil)

  3. #3
    Invité
    Invité(e)
    Par défaut
    Salut,

    Tu auras besoin de faire d'un peu plus de code pour arriver à tes fins :
    • tu charges ton premier dropdown au chargement de la page.
    • tu crées un script JS qui s'abonne à l’évent change de ton dropdown.
    • dans le gestionnaire de l’événement, grâce à de l'ajax (jQuery te permet d'ne faire assez facilement) tu fais appel à une action de ton contrôleur qui te renvoie au format JSON les données à charger dans le second dropdown.
    • une fois les données JSON récupérées, une recherche sur le net te permettra de savoir comment ajouter des éléments dans un dropdown avec du JS.

  4. #4
    Membre éclairé
    Inscrit en
    Avril 2008
    Messages
    279
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 279
    Par défaut
    Merci pour ton retour, mais sur le net je n'ai trouvé que des exemples avec des listes non chargée par une base données et en dur ?


    Citation Envoyé par h2s84 Voir le message
    Salut,

    Tu auras besoin de faire d'un peu plus de code pour arriver à tes fins :
    • tu charges ton premier dropdown au chargement de la page.
    • tu crées un script JS qui s'abonne à l’évent change de ton dropdown.
    • dans le gestionnaire de l’événement, grâce à de l'ajax (jQuery te permet d'ne faire assez facilement) tu fais appel à une action de ton contrôleur qui te renvoie au format JSON les données à charger dans le second dropdown.
    • une fois les données JSON récupérées, une recherche sur le net te permettra de savoir comment ajouter des éléments dans un dropdown avec du JS.

  5. #5
    Membre émérite
    Homme Profil pro
    Architecte technique
    Inscrit en
    Septembre 2005
    Messages
    462
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 462
    Par défaut
    Exemple 1
    Exemple 2

    Si tu sais lire des données en Bdd je ne vois pas la difficulté pour mettre en oeuvre les "Cascading Dropdownlist" !

  6. #6
    Membre éclairé
    Inscrit en
    Avril 2008
    Messages
    279
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 279

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Suppression de tables en cascade
    Par Moah dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 16/07/2004, 15h36
  2. Delete en cascade
    Par defrgly57 dans le forum ASP
    Réponses: 3
    Dernier message: 12/04/2004, 12h13
  3. Delete on cascade avec SQL server
    Par fadoua dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 14/01/2004, 11h02
  4. delete en cascade
    Par bruno270579 dans le forum Requêtes
    Réponses: 8
    Dernier message: 16/12/2003, 17h17
  5. suppresion en cascade + postgres
    Par bruno270579 dans le forum Requêtes
    Réponses: 3
    Dernier message: 16/12/2003, 16h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo