How do I use an asp:Button or asp:LinkButton as asp:Hyperlink?
The existing Hyperlink just goes to another section on the same page: NavigateUrl="#Section2"
I want to do this in the aspx file without additional coding. Thanks.
The purpose is to have a button look instead of the underlined text BUT I don't want to use an image with hyperlink to achieve this purpose.
25 Answers
You can use OnClientClick event to call a JavaScript function:
<asp:Button runat="server" Text="Button" onclientclick='redirect()' /> JavaScript code:
function redirect() { location.href = 'page.aspx'; } But i think the best would be to style a hyperlink with css.
Example :
.button { display: block; height: 25px; background: #f1f1f1; padding: 10px; text-align: center; border-radius: 5px; border: 1px solid #e1e1e2; color: #000; font-weight: bold; } 2There is a middle way. If you want a HTML control but you need to access it server side you can simply add the runat="server" attribute:
<a runat="server">Back</a> You can then alter the href server side using Attributes
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { lnkBack.Attributes.Add("href", url); } } resulting in:
<a href="url.aspx">Back</a> 1The best way to accomplish this is by simply adding "href" to the link button like below.
<asp:LinkButton runat="server" href="url" CssClass="btn btn-primary btn-sm">Button Text</asp:LinkButton> Using javascript, or doing this programmatically in the page_load, will work as well but is not the best way to go about doing this.
You will get this result:
<a href="url" href="javascript:__doPostBack('ctl00$MainContent$ctl00$lSomeLinkButton','')">Button Text</a> You can also get the same results by using using a regular <a href=""></a>.
This can be done very easily using a PostBackUrl and a regular button.
<asp:Button runat="server" Text="Name of web location" PostBackUrl="web address" /> you can use linkbutton for navigating to another section in the same page by using PostBackUrl="#Section2"