본문 바로가기

.NET/asp.net

뒤로 가기 구현

728x90
반응형

원문 보기 : http://www.dotnetcurry.com/ShowArticle.aspx?ID=89&AspxAutoDetectCookieSupport=1

3가지 방법이 있다고 한다

첫째로

static
string prevPage = String.Empty;
protected void Page_Load(object sender, EventArgs e)
{
     if( !IsPostBack )
     {
         prevPage = Request.UrlReferrer.ToString();
     }
}
protected void Button1_Click(object sender, EventArgs e)
{
     Response.Redirect(prevPage);
}

l
oad 이벤트가 발생할때 미리 이전 페이지를 저장해놨다고 버튼이 눌렸을때 저장된 페이지로 리다이렉션 하는방법

load 이벤트때 미리 이전 페이지를 저장하지 않으면
버튼이 눌렸을때 Request.UrlReferrer 값은 현재 페이지 값이다.

두번째
protected void Page_Load(object sender, EventArgs e)
{
Button2.Attributes.Add("onClick", "javascript:history.back(); return false;");
}
 
protected void Button2_Click(object sender, EventArgs e)
{
      
}
자바 스크립트를 쓰는법.
 
세번째
#
protected void Page_Load(object sender, EventArgs e)
{
     if( !IsPostBack )
     {
         ViewState["RefUrl"] = Request.UrlReferrer.ToString();
     }
 
 }
 
protected void Button3_Click(object sender, EventArgs e)
{
     object refUrl = ViewState["RefUrl"];
     if (refUrl != null)
         Response.Redirect((string)refUrl);
}
 
이거 때문에 몇시간을 고민하고 실수를 거듭한 내가 바보같다는 생각이 ㅜㅜ 
728x90
반응형