2012-03-30 5 views
1

해당 페이지로 리디렉션하지 않고 이미지 버튼을 클릭하면 다시 동일한 페이지로 리디렉션되는 문제가 있습니다.이미지 버튼의 클릭 이벤트에서

이것은 asp의 코드입니다.

<asp:ImageButton ID="header1" src="Resources/Icons/Header1.jpg" runat="server" /> 

그리고 이것은 내 페이지로드 코드에 있습니다.

header1.Attributes.Add("onclick", "~/ChildSelection.aspx"); 

왜 그런가?

답변

1

이미지 버튼에 onclick 이벤트가 있어야합니다. 난 당신이

header1.Attributes.Add("PostBackUrl", "~/ChildSelection.aspx"); 

온 클릭 이벤트입니다으로 교체하여이를 달성 할 수있는 것 같아요

<asp:ImageButton ID="header1" src="Resources/Icons/Header1.jpg" runat="server" PostBackURL="~/ChildSelection.aspx"/> 
+0

OP는 이미 속성을 추가하여 이벤트 처리 방법을 선택하는 데 도움이 필요합니다. – SkonJeet

+0

@SkonJeet이 이벤트는 onclick에서 실행됩니다 – Curt

-2

다음 코드를 사용합니다. ImageButton 대신 ImageSrc 속성이있는 하이퍼 링크를 사용하는 것도 좋습니다. 난 경우

그냥

<asp:HyperLink ID="header1" runat="server" ImageUrl="Resources/Icons/Header1.jpg">Click Here</asp:HyperLink> 

그리고

header1.NavigateUrl = "~/ChildSelection.aspx"; 
+2

다운 유권자? 왜 저를 투표 해 주십니까? –

1

:

<asp:ImageButton ID="header1" ImageUrl="Resources/Icons/Header1.jpg" runat="server" OnClick="header1_Click" /> 

protected void header1_Click(object sender, ImageClickEventArgs e) 
{ 
    Response.Redirect("~/ChildSelection.aspx"); 
} 
1

onclick 이벤트 뒤에 코드에서 할 수있는 더 나은 방법을 리디렉션하려는 경우 [편집]

는 자바 스크립트를 실행 착각하지 말라. OnClick은 서버 측 이벤트를 나타냅니다. 해당 페이지로 리디렉션되도록 창 위치를 설정하십시오.

header1.Attributes.Add("onclick", 
    string.Format("window.location = '{0}'", ResolveClientUrl("~/ChildSelection.aspx"))); 
관련 문제