2011-11-09 28 views
1

我想在Asp.Net和C#中开发一些网页,它几乎看起来像Facebook登录页面,用户可以在页面顶部登录并注册底部,我应该怎么做?当焦点在标志的文本框部分和用户击中输入它应该去登录方法,以一种形式处理多个提交按钮ASP.Net

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

回答

1

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

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

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

} 

我在你的情况相同的逻辑将两个按钮运行设定,你可以找出使用传递sender参数哪个按钮被点击进入功能。

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

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

然后

Button2.Click += Button1_Click;

两个按钮将导致“的button1_Click”方法点击时运行。

+0

thanks.sorry我无法理解前两行如何工作。你能给我任何链接,看看这是如何工作? – ePezhman

+0

@ePezhman - 我不认为这是你想要的,这个代码只是允许2个按钮在点击时执行相同的事件。查看我的答案,了解如何在用户按下文本框中的输入时触发正确的按钮事件。 –

+0

@ePezhman - 我已经添加了一个例子来说明代码。 – ipr101

0

你宁愿使用HTML控件,然后Asp.net控制和可以使用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> 
0

你可以做这样的事情在页面加载多个按钮连接到同一个方法:

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

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

可以使用输入按钮通过包装两个文本框在面板的按钮发射按钮的方法,并设置在面板的defaultbutton财产。

0

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

+0

我使用了教程,但它对我无效。 – ePezhman

+0

@ePezhman你可以得到示例版本的工作?如果我们要进一步提供帮助,您可能必须发布您的代码 –

+0

我无法获得任何示例代码,但似乎链接已损坏 – ePezhman