So, I'm trying to have a field in a gridview which is a link that opens a details page, based on the row clicked. The details page works when I go to it manually, but I can't seem to access it via calling a function which does a Response.Redirect(URL) - instead, I get the odd behavior that when the linkbutton is clicked, the page does a postback and stays on itself.What am I doing wrong? Should I be using Server.Transfer() instead? I'd rather use redirect, because having the url update seems to me like an interface advantage in the use case I'm looking at.This is part of a sharepoint webpart, the other page is on the same sharepoint server, and is a different collection of webparts.\[code\]<asp:Gridview ID="grdWU" runat="server" [+bunch of settings]><Columns> <asp:TemplateField HeaderText="Workunit #" HeaderStyle-HorizontalAlign="Left"> <ItemTemplate> <asp:Linkbutton ID="Workunit" runat="server" **OnClientClick="OpenDetails"** Text='<%# Bind("Workunit") %>'></asp:Linkbutton> </ItemTemplate> </asp:TemplateField></Columns></asp:Gridview>\[/code\]In the code behind class:\[code\] protected void OpenDetails(object sender, EventArgs e) { GridViewRow clickedRow = ((LinkButton) sender).NamingContainer as GridViewRow; Button btnWorkunit = (Button)clickedRow.FindControl("Workunit"); //Response.Redirect(workunitdetailsurl + "?Workunit=" + activeworkunit.ID, true); Response.Redirect("http://www.google.com"); }\[/code\]Out of desperation/diagnosis, I tried to redirect to google instead of my crafted URL... still nothing. The page only refreshes itself. Am I doing something wrong?Post-answer Edit: I guess I wasn't properly understanding the difference between onclick and onclientclick.