none
表单回车提交表单 RRS feed

  • 问题

  • 一页面分2个位置 左边位置是注册,右边位置是登陆,我想在注册位置点回车就提交注册这边的信息,在登陆这边点回车就提交登陆这边信息,在asp.net中怎么实现
    2010年12月15日 3:13

答案

  • 需要两个 Form 来实现,默认情况下,在一个 Form 元素中,默认焦点会自动被放在第一个提交按钮上。ASP.NET 默认只有一个 Form,所以,要实现的话需要手动设置其焦点。需要写 JavaScript。
    Mark Zhou
    2010年12月15日 6:22

全部回复

  • 需要两个 Form 来实现,默认情况下,在一个 Form 元素中,默认焦点会自动被放在第一个提交按钮上。ASP.NET 默认只有一个 Form,所以,要实现的话需要手动设置其焦点。需要写 JavaScript。
    Mark Zhou
    2010年12月15日 6:22
  • 假定你有2个文本框(asp:TextBox),2个按钮(asp:Button)

    <asp:TextBox id=textBoxReg runat=Server />
    <asp:Button runat=Server id=buttonReg />

    <asp:TextBox id=textBoxLogin runat=Server />
    <asp:Button runat=Server id=buttonLogin />

     

    写一段js脚本

    <script type=text/javascript>

    document.getElementById('<%= textBoxReg.ClientID %>').onkeydown = function()
    {

        if(event.keyCode == 13)
        {

              document.getElementById('<%=buttonReg.ClientID %>').click();

              return false;

        }

        else
        {
              return true;
        }

    }

    document.getElementById('<%= textBoxLogin.ClientID %>').onkeydown = function()
    {

        if(event.keyCode == 13)
        {

              document.getElementById('<%=buttonLogin.ClientID %>').click();

              return false;

        }

        else
        {
              return true;
        }

    }

    </script>

     

    脚本纯手写,可能有bug,试试吧

    2010年12月17日 8:08
  • Hi 错觉,

     

    欢迎使用MSDN社区论坛,期待您能在学习知识的同时为社区做出贡献,大家共同提高。J

    我会将有用的回复选为答案,如果这些答案并没有解决您的问题,您可以“取消答复标记”。

     

    Sincerely,

    Leo Liu


    Leo Liu [MSFT]
    MSDN Community Support | Feedback to us
    Get or Request Code Sample from Microsoft
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    2010年12月21日 1:55
    版主