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 Discussion :

RadioButtonList + Panel


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Expert confirmé

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Septembre 2006
    Messages
    3 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2006
    Messages : 3 580
    Par défaut RadioButtonList + Panel
    Bonjour

    Mon problème est simple.

    Dans ma page asp.Net, j'ai ceci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <asp:RadioButtonList ID="RadioButtonList1" runat="server" OnSelectedIndexChanged="RadioButtonList1_SelectedIndexChanged">
            <asp:ListItem>Avec XXX</asp:ListItem>
            <asp:ListItem Selected="True">Sans XXX</asp:ListItem>
        </asp:RadioButtonList>
    Dans mon code behind, j'ai le code suivant dans le page_load

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    RadioButtonList1.Items[0].Attributes.Add("onclick", "document.getElementById( 'optionpanel' ).style.display = 'block';");            RadioButtonList1.Items[1].Attributes.Add("onclick", "document.getElementById( 'optionpanel' ).style.display = 'none';");

    et mon option panel...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     <asp:Panel id="optionpanel" hidden="hidden" >
    Avec ce code, j'arrive donc à faire, coté client, que l'appui sur l'un des radiobutton affiche ou pas mon panel...

    Maintenant, lors du chargement de ma page, je dois positionner le radioButton à une valeur provenant d'une base de données...

    Je fais donc le code suivant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    RadioButtonList1.Items[0].Selected = contrat.SWAP;
    RadioButtonList1.Items[1].Selected = !contrat.SWAP;
    Résultat ==> Mon radioButton est bien configuré...

    Question : Comment je fais pour que mon panel soit visible aussi ?

    Réponse : J'ai essayé avec l'attribut : Runat="server"...

    Celà me permet alors de faire du code genre :

    optionPanel.Style["display"] = "block";

    SAUF QUE:
    Mon comportement avec les radiobutton ne fonctionne plus du cout (peut-etre à cause du runat="server"...

    Au final, ma question se résumerait donc à :

    Est-il possible d'avoir des radioButton qui gère l'affichage / masquage d'un controle coté client tout en ayant la possibilité d'initialiser l'état des controles
    comme il convient qu'ils soient !!!


    Merci d'avance...

  2. #2
    Expert confirmé

    Avatar de FirePrawn
    Homme Profil pro
    Consultant technique
    Inscrit en
    Mars 2011
    Messages
    3 179
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Consultant technique

    Informations forums :
    Inscription : Mars 2011
    Messages : 3 179
    Par défaut


    Tout simplement en virant l'attribut hidden de ton Panel ?
    Avant toute chose : lire le mode d'emploi du forum et ses règles.
    Je ne réponds pas aux questions techniques en MP.

  3. #3
    Expert confirmé

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Septembre 2006
    Messages
    3 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2006
    Messages : 3 580
    Par défaut
    bah non, ca ne marche pas...

    A partir du moment ou je "vire" le runat="server", le clique sur les radio boutons cachent bien ou affichent bien le panel...mais par contre, le panneau n'est pas affiché au début suivant la valeur...

    et si je mets le runat="server", je peux effectivement définir l'état de mon panneau, mais le code client ne fonctionne plus alors...

    que faire ?

  4. #4
    Expert confirmé

    Avatar de FirePrawn
    Homme Profil pro
    Consultant technique
    Inscrit en
    Mars 2011
    Messages
    3 179
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Consultant technique

    Informations forums :
    Inscription : Mars 2011
    Messages : 3 179
    Par défaut
    Ton panneau ne contient rien ?

    Tu as essayé en mettant tout simplement un style="display:block;" sur ton Panel ?

    Et accessoirement ton javascript ne fonctionne plus si tu mets ton Panel en runat='server' pour la simple et bonne raison que du coup l'id de ton Panel n'est plus le même.
    L'ID est bien 'optionpanel' mais c'est l'ID côté ASP.NET. L'id de l'élément HTML généré lui ne sera pas optionpanel.
    Pour se faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    getElementById('<%=optionpanel.ClientID%>')
    Avant toute chose : lire le mode d'emploi du forum et ses règles.
    Je ne réponds pas aux questions techniques en MP.

  5. #5
    Expert confirmé

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Septembre 2006
    Messages
    3 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2006
    Messages : 3 580
    Par défaut
    mon panel est :

    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
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    <asp:Panel id="optionpanel"  runat="server">
            <table class="auto-style1">
                <tr>
                    <td class="auto-style4">Délai SWAP:</td>
                    <td>
                        <table class="auto-style1">
                            <tr>
                                <td class="auto-style7">j+</td>
                                <td>
                                    <ig:WebDropDown ID="DelaiSWAP" runat="server" StyleSetName="RubberBlack" Width="200px">
                                        <Items>
                                            <ig:DropDownItem Selected="True" Text="1" Value="1">
                                            </ig:DropDownItem>
                                            <ig:DropDownItem Selected="False" Text="2" Value="2">
                                            </ig:DropDownItem>
                                            <ig:DropDownItem Selected="False" Text="3" Value="3">
                                            </ig:DropDownItem>
                                            <ig:DropDownItem Selected="False" Text="4" Value="4">
                                            </ig:DropDownItem>
                                            <ig:DropDownItem Selected="False" Text="5" Value="5">
                                            </ig:DropDownItem>
                                        </Items>
                                    </ig:WebDropDown>
                                </td>
                            </tr>
                        </table>
                    </td>
                </tr>
                </table>
        </asp:Panel>
    Le problème n'est pas d'afficher mon panel, mais de pouvoir, lors du load choisir son état (affiché ou pas) et ensuite,par appui sur 2 radio boutons de changer son style (visible, caché)... sans faire un postback.... sinon, ca serait trop simple

  6. #6
    Expert confirmé

    Avatar de FirePrawn
    Homme Profil pro
    Consultant technique
    Inscrit en
    Mars 2011
    Messages
    3 179
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Consultant technique

    Informations forums :
    Inscription : Mars 2011
    Messages : 3 179
    Par défaut
    Relis mon post précédent j'ai édité
    Avant toute chose : lire le mode d'emploi du forum et ses règles.
    Je ne réponds pas aux questions techniques en MP.

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

Discussions similaires

  1. comment acceder a un component lui meme dans un panel
    Par mimosa7 dans le forum Composants
    Réponses: 2
    Dernier message: 16/11/2003, 23h02
  2. Problem avec les *.AVI sur les panels
    Par NaDiA_SoFt dans le forum C++Builder
    Réponses: 3
    Dernier message: 31/08/2003, 22h50
  3. Comment créer un bitmap à partir d'un panel ?
    Par calou34 dans le forum Composants VCL
    Réponses: 3
    Dernier message: 19/08/2003, 15h06
  4. Comment faire un panel non rectangulaire?
    Par grincheux dans le forum C++Builder
    Réponses: 4
    Dernier message: 11/05/2003, 15h47
  5. Prob, images, Panels, et form.
    Par CaptainChoc dans le forum Composants VCL
    Réponses: 2
    Dernier message: 10/05/2003, 10h08

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