多个TextBox,多个Button
如 
TextBox1,TextBox2-->Button1
TextBox3,TextBox4-->Button2
TextBox5,TextBox6-->Button3
当在TextBox1,TextBox2中输入数据后,直接回车提交Button1
当在TextBox3,TextBox4中输入数据后,直接回车提交Button2
以此类推。。实际中每次都是提交的Button1,这个有什么办法解决没?

解决方案 »

  1.   

    你触发Button2的事件啊,别总触发Button1的
      

  2.   

    private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
    {
        if(e.KeyChar == '\r')
        {
            
        }
    }private void textBox3_KeyPress(object sender, KeyPressEventArgs e)
    {
        if(e.KeyChar == '\r')
        {
            
        }
    }
      

  3.   

    在js中用onkeypress或onkeydown中把回车键的keycode改为tab的。当是button的时候不改变。就OK了
      

  4.   

    在TextBox的KeyPress事件里判断是否按下Enter调用对应按钮事件。
      

  5.   


    private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
     {
         if(e.KeyChar == '\r')
         {
             //执行button1的click函数
         }
     }
    private void textBox2_KeyPress(object sender, KeyPressEventArgs e)
     {
         if(e.KeyChar == '\r')
         {
             //执行button1的click函数
         }
     } private void textBox3_KeyPress(object sender, KeyPressEventArgs e)
     {
         if(e.KeyChar == '\r')
         {
               //执行button2的click函数
         }
     }
    ……
      

  6.   

    每次都是提交的Button1,
    窗体属性上有个AcceptButton然后选择你要的那个Button
      

  7.   

    解决办法,采用
                if(event.keyCode==13) 
                {
                    $(id).click();
                    event.returnValue=false; 
                }
      

  8.   

    完整的解决方案:aspx:<script type="text/javascript" language="javascript">
    function SubmitSearch(k)
    {
    if(window.event.keyCode==13)
    {
    document.getElementById(k).focus();
    document.getElementById(k).click();
    return false;
    }
    }
    </script><asp:TextBox ID="TextBox1" runat="server" ></asp:TextBox>
    <asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" />
    <asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
    <asp:Button ID="Button2" runat="server" Text="Button" OnClick="Button2_Click" />
    <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
    =========================
    cs:
    protected void Page_Load(object sender, EventArgs e)
    {
    SetSub(TextBox1, Button1);
    SetSub(TextBox2, Button2);
    }protected void Button1_Click(object sender, EventArgs e)
    {
    Label1.Text = "Text1";
    }protected void Button2_Click(object sender, EventArgs e)
    {
    Label1.Text = "Text2";
    }private void SetSub(TextBox tb, Button bt)
    {
    tb.Attributes.Add("onkeypress", " return SubmitSearch('" + bt.ClientID + "')");
    }==========================
    SetSub 可以做成一共通用类的方法。
    此方法是用简单,ascx,Master 下都通用,可以给任意的textbox指定特定的button