asp:ImageButton qui déconne
Bonjour,
J'ai une page aspx dans laquelle j'ai 2 contrôles :
- un asp:DropdownList qui sert à la redirection vers d'autres pages
- et un asp:ImageButton qui déclenche un script avec l'événement OnClick.
Lorsque je clique sur le bouton image en premier, le script s"exécute normalement.
Par contre, lorsque je fais un choix dans la liste déroulante, ce choix (page de destination) est également exécuté par le click sur le bouton image qui ignore complétement son script.
Merci.
Code exemple de asp:ButtonImage
Le schéma de la page aspx est :
Code:
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 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
| <script runat="server">
Sub Aller(ByVal Sender As Object, ByVal E As EventArgs)
Dim chemin As String
chemin = choix.Text & ".aspx"
Response.Redirect(chemin)
End Sub
Sub ImageButton_Click(ByVal Sender As Object, ByVal E As ImageClickEventArgs)
Dim tableau()
Dim en_tete As TableRow
Dim header_cell_01 As TableHeaderCell
Dim header_cell_02 As TableHeaderCell
Dim obj_ligne As TableRow
Dim obj_ligne_2 As TableRow
Dim obj_cell_01 As TableCell
Dim obj_cell_02 As TableCell
Dim obj_cell_03 As TableCell
Dim obj_cell_04 As TableCell
Dim total_rrra As Double
en_tete = New TableRow()
header_cell_01 = New TableHeaderCell()
header_cell_01.Text = "Intitulé"
header_cell_01.CssClass = "en_tete0"
en_tete.Cells.Add(header_cell_01)
header_cell_02 = New TableHeaderCell()
header_cell_02.Text = "Montant"
header_cell_02.CssClass = "en_tete"
en_tete.Cells.Add(header_cell_02)
ma_table.Rows.Add(en_tete)
etc..
// script consistant à créer à la volée une autre table Html
// Il fonctionne sans problème lorsque je clique d'abord sur l'asp:ImageButton
// Si je sélectionne d'abord une page avec la liste déroulante puis je clique sur le bouton image
// ça ne fonctionne plus : je suis renvoyé vers la même page que j'ai sélectionné précédemment avec
// le menu déroulant
End Sub
//Pour FAIRE SIMPLE dans un test, on remplacera ce script par
Sub ImageButton_Click(ByVal Sender As Object, ByVal E As ImageClickEventArgs)
Label1.Text = "TOTO"
End Sub
// et on rajoutera un asp:Label avec id="Label1"
</script> |
Puis
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| <form runat="server"
......
<asp:DropDownList id="choix" runat="server" AutoPostBack="true" OnSelectedIndexChanged="Aller">
<asp:Listitem Text="Accès direct" Value="0" />
<asp:Listitem text="Services" Value="services" />
<asp:Listitem text="Articles" Value="articles" />
<asp:Listitem text="Contacts" Value="contacts" />
<asp:Listitem text="Infos" Value="infos" />
</asp:DropDownList>
......
<asp:tableCell Width="180" Height="25" CssClass="couleur4">PLUS DE CONTENU <asp:ImageButton ID="ImageButton2"
ImageUrl="images/fleche.GIF" OnClick="ImageButton_Click" width="23" height="11" runat="server" /></asp:tableCell>
</form> |