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