在一个表单ASP.Net中处理多个提交按钮

时间:2011-11-09 14:23:08

标签: c# asp.net forms form-submit

我正在尝试在Asp.Net和C#中开发一些网页,几乎看起来像Facebook登录页面,用户可以在页面顶部登录并在底部注册,我该怎么做?当焦点位于登录部分的文本框上并且用户点击Enter时,它应该转到登录方法,

我已经在stackoverflow中搜索了它,似乎所有已经问过的问题都是关于我没有使用的Asp.Net MVC。

4 个答案:

答案 0 :(得分:1)

您可以将单个事件分配给多个按钮点击 -

topButton.Click += SignInButtonClick;
bottomButton.Click += SignInButtonClick;

void SignInButtonClick(object sender, EventArgs e)
{
    //your code here

}

我假设在你的情况下,两个按钮都会运行相同的逻辑,你可以找到使用传递给函数的sender参数点击的按钮。

作为一个例子,假设我有一个aspx页面并且我添加一个名为'Button1'的按钮然后我可以通过Visual Studio添加一个click事件,它将创建一个methiod来处理我的click事件{ {1}}。该方法将自动链接到按钮AutoEventWireup up property in c# is set to true by default

现在,如果我添加第二个按钮并将其命名为“Button2”但我希望该按钮触发与用于Button1的事件处理程序相同的事件处理程序,我可以将此代码添加到页面的“Page_Load”事件处理程序

Button1_Click

然后,两个按钮都会导致“Button1_Click”方法在单击时运行。

答案 1 :(得分:0)

您更喜欢使用html控件然后使用Asp.net Control并可以使用Jquery来执行loginb或注册         

    $('#login').click(function(event)
    {
      // call
      // $.ajax(),$.get or $.post method for ajax call
     });
    $('#signup').click(function(event)
    {
      // call
      // $.ajax(),$.get or $.post method for ajax call
     });
    </script>

    <form id="form1">
    <input type="button" value="login" id="login"/>
    </form>
    <form id="form2">
    <input type="button" value="signup" id="signup"/>
    </form>

答案 2 :(得分:0)

您可以通过执行类似页面加载的方式将多个按钮连接到同一方法:

lbTest1.Click += Test_Click;
lbTest2.Click += Test_Click;

void Test_Click(object sender, EventArgs e) 
{ 
    //your code here 
} 

您可以使用输入按钮来触发按钮的方法,方法是将文本框包装为面板中的按钮,并设置面板的defaultbutton属性。

答案 3 :(得分:0)

最简单的解决方案是将相关控件(例如注册控件)包装在Panel控件中,并在Panel上设置DefaultButton属性。您可以在this tutorial

中阅读相关内容