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 :

Populer combobox en javascript en ensuite lui accéder via code behind


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Inscrit en
    Novembre 2007
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 5
    Par défaut Populer combobox en javascript en ensuite lui accéder via code behind
    Bonjour

    Voilà, j'ai un radgrid ou il y a un combobox, l'usager peut ajouter des combobox en cliquant sur un lien. Ces combobox sont populer en javascript à l'aide d'un array. Lorsque l'usager clique sur le bouton "Calculer" je veux savoir la valeur qui sélectionnée dans tous les combobox. Le problème c'est que je ne suis pas capable d'accéder a la selection du premier combobox. Il me retour toujours que le selectedvalue = "".
    Voici mon code
    HTML:

    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
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
      <telerik:RadGrid 
                                      ID="RadGrid2" 
                                      Skin="Vista" 
                                      runat="server" 
                                      ShowFooter="true" 
                                      CommandItemStyle-HorizontalAlign="Center">  
     
     
                                         <MasterTableView 
                                             ShowFooter="true" 
                                             CommandItemDisplay="bottom" 
                                             EditMode="InPlace" >  
                                             <CommandItemTemplate>
                                                 <asp:LinkButton ID="LinkButton1" CommandName="CalculDistance" Runat="server" CssClass="TexteBlanc16">Calculer</asp:LinkButton>
                                             </CommandItemTemplate>
                                             <Columns>                     
                                                 <telerik:GridTemplateColumn UniqueName="CodePostal" HeaderText="Code Postal">  
                                                     <ItemTemplate>  
                                                         <asp:DropDownList ID="LstCodePostal" runat="server"></asp:DropDownList>
                                                     </ItemTemplate>  
                                                 </telerik:GridTemplateColumn>  
                                             </Columns>  
                                          </MasterTableView>  
                                           <ClientSettings>
                                            <ClientEvents OnRowCreated="RowCreated" />
                                        </ClientSettings>
                                  </telerik:RadGrid> 
                                  <asp:Panel ID="Panel1" runat="server">
                                  <asp:LinkButton ID="LKBtnAjouterDestination" runat="server">Ajouter une destination</asp:LinkButton>
                                  </asp:Panel>
     
     <script language="JavaScript">
     
            function RowCreated(sender, eventArgs) {
     
     
                var master = $find("<%=RadGrid2.ClientID %>").get_masterTableView();
                var row = eventArgs.get_gridDataItem();
                var ListCodePostal = row.findElement("LstCodePostal");
     
                for (var i = 0; i < correspondance[0].length; i++) {
                    var optn = document.createElement("OPTION");
                    optn.text =  correspondance[0][i];
                    optn.value = correspondance[1][i];
                    ListCodePostal.options.add(optn);
                    }
            }
    </script>
    Code Behind
    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
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
     
    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
     If Not IsPostBack = True Then
        AjouterLigne(dt)
     End If
     End Sub
     
     Public Function AjouterLigne(ByVal dt As DataTable) As DataTable
            ' method to create row 
            Dim dr As DataRow = dt.NewRow()
            dr("RowNumber") = ""
            dt.Rows.Add(dr)
            Return dt
        End Function
     
    Private Sub RadGrid2_ItemCommand(ByVal sender As Object, ByVal e As Telerik.Web.UI.GridCommandEventArgs) Handles RadGrid2.ItemCommand
            Dim cpt As Integer = 0
            Dim CodePostalDe As String
            Dim CodePostalA As String
            Dim kmCalcule As Decimal
     
            If e.CommandName = "CalculDistance" Then
                CalculerDistanceMultiple()
                Do While cpt < RadGrid2.Items.Count
                     If CodePostalDe = "" Then
                        Dim LstcodeDe As DropDownList = DirectCast(RadGrid2.Items(cpt)("CodePostal").FindControl("LstCodePostal"), DropDownList)
                        CodePostalDe = LstcodeDe.SelectedValue
                        cpt = cpt + 1
     
                        'Avancer le for each de 1 enregistrement
                    End If
                    Dim LstcodeA As DropDownList = DirectCast(RadGrid2.Items(cpt)("CodePostal").FindControl("LstCodePostal"), DropDownList)
                    If Not (LstcodeA.SelectedValue Is Nothing) And (LstcodeA.SelectedValue <> "") Then
                        CodePostalA = LstcodeA.SelectedValue
                        kmCalcule = kmCalcule + TrouverDistance(CodePostalDe, CodePostalA)
                    End If
                    CodePostalDe = CodePostalA
                                  cpt = cpt + 1
                Loop
                Response.Write(kmCalcule)
     
                      End If
        End Sub

    Est-ce que le fait que je popule mes combobox en javascript peut faire en sorte que je ne sois pas capable d'accéder au selectedvalue en code behind?

    Merci de m'aider

  2. #2
    Membre émérite Avatar de Ramajb
    Homme Profil pro
    ----------------------------
    Inscrit en
    Septembre 2007
    Messages
    476
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : ----------------------------

    Informations forums :
    Inscription : Septembre 2007
    Messages : 476
    Par défaut
    Citation Envoyé par mymyrsx1 Voir le message
    Bonjour
    Est-ce que le fait que je popule mes combobox en javascript peut faire en sorte que je ne sois pas capable d'accéder au selectedvalue en code behind?

    Merci de m'aider
    De cote serveur, il n'a pas le moyen de connaître les éléments qui ont été rajouté du cote client, pour lui ton DDL est vide et du coup impossible de sélectionner quelconque élément.
    A moins que tu sauvegarde l’élément sélectionné dans un champ Hidden en utilisant Javascript. Ainsi tu auras la possibilité de le récupéré du cote serveur.
    a+

Discussions similaires

  1. Javascript. Et après lui ?
    Par arthuro45 dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 17/10/2009, 19h18
  2. Retracer et interagir en javascript avec un contrôle créé en code behind
    Par gabdeschenes dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 18/06/2009, 21h39
  3. alignement des combobox en javascript
    Par cdevl32 dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 13/03/2009, 16h14
  4. Populer COMBOBOX avec des objets persos
    Par MaitreTsiang dans le forum Flex
    Réponses: 3
    Dernier message: 29/09/2008, 11h05
  5. Réponses: 2
    Dernier message: 17/06/2008, 12h49

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