2011-11-09 191 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