2011-11-14 177 views
1

我想添加一個註銷鏈接到我的表單,以便我們的員工可以註銷他們正在處理的工作。ASP.NET使用超鏈接代替按鈕

在我的應用程序背後的代碼很簡單:

protected void Logout_Click(object sender, EventArgs e) { 
    MasterPage.Logout(); 
} 

一個asp.Button我可以連接最多的onClick事件代碼。

如何使用asp.Hyperlink控件調用此方法?

回答

5

您正在尋找LinkButton控件。它會被渲染爲a標記,並且該頁面將被自動發回,以便可以調用您的OnClick函數。

+0

只有[有條件地](http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.linkbutton.aspx):_The LinkBut​​ton控件呈現JavaScript到t他客戶瀏覽器。客戶端瀏覽器必須啓用JavaScript才能使此控件正常工作._ –

+0

是的,這就是所有Web窗體控件的工作原理,它們使用JavaScript和隱藏字段,並在每個頁面上發佈表單。 Web表單非常蹩腳。 – wsanville

+0

好吧,不完全是因爲任何_real_按鈕都會提交表單。 –

2

Hyperlink控件呈現一個簡單的超鏈接,它不允許您將它連接到點擊處理程序。改爲嘗試使用LinkButton控件。

1

有一件事我可能會建議是簡單地使用CSS來風格您的實際事實按鈕採用鏈接的,而不是模仿的東西一個按鈕,將有可能被不同反正風格。

當模仿一個按鈕,你在他們的瀏覽器是relying on the user having script enabled

LinkBut​​ton控件呈現的JavaScript客戶端瀏覽器。 客戶端瀏覽器必須已啓用此功能的JavaScript,才能正常運行 功能。

而按鈕是一個按鈕將提交表單。

編輯:

根據您的評論,這裏是一個簡單的例子,你可以很容易地適應:

CSS:

.hyperLinkButton 
{ 
    border:none; 
    background:none; 
    color:Navy; 
    cursor:pointer; 
} 
.hyperLinkButton:hover 
{ 
    text-decoration:underline; 
} 

馬克 - 達:

<asp:Button runat="server" CssClass="hyperLinkButton" 
    Text="Is it a HyperLink? Is it a LinkButton? No, it's a Button!" /> 
+0

如果你有一個關於使用CSS來設計一個*實際的按鈕來模擬鏈接*的信息的鏈接,我非常想看到它。這可能是我最終的結果。 – jp2code

+0

@ jp2code我已經添加了一個例子。 –