Uma das coisas mais irritantes no desenvolvimento web é lidar com a “tecla Enter” para formulários. A “tecla Enter” se tornou a preferência do usuário ao enviar formulários. Embora forneçamos aos usuários um botão de envio, a maneira mais simples e direta ainda é: inserir o texto e pressionar Enter para concluir o envio
. O ASP.NET 2.0 oferece uma boa solução para isso. Basta atribuir o atributo "defaultbutton" ao ID do controle de botão que você deseja gerar o evento.
"defaultbutton" pode ser especificado tanto no nível do formulário quanto no nível do painel (tag <asp:panel>). Quando o botão padrão é especificado no formulário e no painel, se a "tecla Enter" for acionada no painel,
o código de exemplo a seguir no painel de execução possui um formulário e 4 painéis, e há botões no pedido e no painel . Atenção: Quais eventos de botão serão disparados após pressionar Enter na caixa de texto
<form id="form1" runat="server" defaultbutton="btn1">
<div>
<asp:TextBox ID="txt" runat="server"></asp:TextBox>
<asp:Button ID="Button5" runat="server" Text="Cancel" OnClick="Button5_Click" />
<asp:Button ID="btn1" runat="server" Text="Submit" OnClick="btn1_Click" />
<asp:Panel ID="pnl1" runat="servidor" defaultbutton="Button1">
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
<asp:Button ID="Button1" runat="server" Text="Button1" OnClick="Button1_Click" />
</asp:Painel>
<asp:Panel ID="Panel1" runat="servidor" defaultbutton="Button2">
<asp:TextBox ID="TextBox3" runat="server"></asp:TextBox>
<asp:TextBox ID="TextBox4" runat="server"></asp:TextBox>
<asp:Button ID="Button2" runat="server" Text="Button2" OnClick="Button2_Click" />
</asp:Painel>
<asp:Panel ID="Panel2" runat="servidor" defaultbutton="Button3">
<asp:TextBox ID="TextBox5" runat="server"></asp:TextBox>
<asp:TextBox ID="TextBox6" runat="server"></asp:TextBox>
<asp:Button ID="Button3" runat="server" Text="Button3" OnClick="Button3_Click" />
</asp:Painel>
<asp:Panel ID="Panel3" runat="servidor" defaultbutton="Button4">
<asp:TextBox ID="TextBox7" runat="server"></asp:TextBox>
<asp:TextBox ID="TextBox8" runat="server"></asp:TextBox>
<asp:Button ID="Button4" runat="server" Text="Button4" OnClick="Button4_Click" />
</asp:Painel>
</div>
</form>
Os eventos de amostra correspondentes para cliques de botão são
protegido vazio Button1_Click (objeto remetente, EventArgs e)
{
Response.Write(Button1.Text);
}
protegido void Button2_Click (objeto remetente, EventArgs e)
{
Response.Write(Button2.Text);
}
protegido void Button3_Click (objeto remetente, EventArgs e)
{
Response.Write(Button3.Text);
}
protegido void Button4_Click (objeto remetente, EventArgs e)
{
Response.Write(Button4.Text);
}
void protegido btn1_Click (remetente do objeto, EventArgs e)
{
Resposta.Write(btn1.Texto);
}
protegido void Button5_Click (objeto remetente, EventArgs e)
{
Response.Write(Button5.Text);
}
Texto original: http://forums.asp.net/thread/1270048.aspx
Texto original: http://forums.asp.net/thread/1270048.aspx
Eu realmente não sei como traduzir a "chave de entrada"
ao baixar o código
. Por favor, me dê alguns conselhos.
Obrigado