locked
Bouton de type ‘Submit’ par defaut RRS feed

  • Discussion générale

  • Dans la plupart des pages web, on a un bouton qui fonctionne comme la touche Enter. Un clic sur ce bouton envoie les informations introduites jusqu’à ce moment-là ou recharge la page. Pour des raisons d’utilisation, on peut attribuer à la touche Enter du clavier le même rôle que le bouton de la page.

     

    Normalement, si on tape la touche Enter sur le clavier, on obtient les résultats suivants :

     

    ◦S’ il y a une seule zone de texte et un seul bouton, le bouton est soumis. Toutefois, le code d'événement n’est pas exécuté dans le postback de la page.

     

    ◦ Si on a deux ou plusieurs boutons, le navigateur prend le premier bouton comme le bouton par défaut. Toutefois, il reste impossible d'exécuter le gestionnaire d'événements.

     

    Avec ASP.NET 2.0, en spécifiant simplement la propriété "defaultbutton" à l'ID du <asp:button>, le travail est effectué.

     

    La propriété defaultbutton peut être spécifiée au niveau du formulaire dans la balise <form> ainsi qu'au niveau du panneau dans la balise <asp:panel>. Le paramètre de niveau formulaire est ignoré lorsque spécifié au niveau du panneau, pour les contrôles qui sont à l'intérieur du panneau.

     

    Ce code exemplifie l’utilisation de la propriété « defaultbutton » au niveau de la forme et du panneau.

     

    <%@ Page Language="vb" AutoEventWireup="false" CodeBehind="Default.aspx.vb" Inherits="WebApplication4._Default" %>
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
     
    <html xmlns="http://www.w3.org/1999/xhtml" >
    <head runat="server">
        <title></title>
    </head>
    <body>
        <form id="form1" runat="server" defaultbutton="Button2">
        <div>    
            <asp:Button ID="Button1" runat="server" Text="Button" />
            <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
            <asp:Button ID="Button2" runat="server" Text="Button" />    
        </div>
        <asp:Panel ID="Panel1" runat="server" DefaultButton="Button3">
            <asp:Button ID="Button3" runat="server" Text="Button" />
            <asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
        </asp:Panel>
        </form>
    </body>
    </html>

     

     

     Protected Sub Button1_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button1.Click
            MsgBox("bouton1")
        End Sub
     
        Protected Sub Button2_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button2.Click
            MsgBox("bouton2")
        End Sub
     
        Protected Sub Button3_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button3.Click
            MsgBox("bouton3")
        End Sub

     

     

    Pour plusieurs informations, visitez la page Foire aux Questions – ASP.NET

     

     
    Alex Petrescu - MSFT
    mardi 23 mars 2010 14:15
    Modérateur