There are several ways to use client-side functions or methods for a hyperlink.
In an html anchor. For example, the following code specifies the method to track page view using Google Analytics via onclick:
Code:<a onclick="pageTracker._trackPageview ('/http_bettereducation_com_au_Results_vce_aspx');"
href="http://bettereducation.com.au/Results/vce.aspx" target="_blank">VCE School Ranking</a>
For ASP.NET controls like Hyperlink, MenuItem or LinkButton:
1. Use their NavigateUrl property and set it to "javascript: <MyMethod>"
2. Client method with string literals as arguments
Code:<asp:HyperLink ID="HyperLink2" runat="server" NavigateUrl='<%# Eval("WebSite","http://{0}") %>'
Target="_blank" Text='<%# Eval("Name") %>' onClick="javascript: pageTracker._trackPageview
('/coachingSchool/<SpecificSchoolName>');"></asp:HyperLink>
3. Client method with dynamic strings (determined at run-time) as arguments
Use the Attributes property of the controls to add your OnClick attribute:
Code:hyperLink.Attributes.Add("OnClick","<MyMethod>")
Code:<asp:HyperLink ID="HyperLink2" runat="server" NavigateUrl='<%# Eval("WebSite","http://{0}") %>'
Target="_blank" Text='<%# Eval("Name") %>' onload="HyperLink2_Load"></asp:HyperLink>
Code: protected void HyperLink2_Load(object sender, EventArgs e)
{
HyperLink link = (HyperLink)sender;
string script = string.Format(@"javascript: pageTracker._trackPageview('/coachingSchool/name/{0}');", link.Text.Replace(' ', '_'));
link.Attributes.Add("onClick", script);
}
4. Add a LinkButton control and set the OnClientClick property to the client side method.