FrmPageLoad : IsPostBack
FrmPageLoad.aspx |
<div> <asp:Button ID = "btnPostBack" runat = "server" Text = "다시 게시(PostBack)" onclick="btnPostBack_Click" /> <asp:Button ID = "btnNewLoad" runat = "server" Text = "다시 로드" onclick="btnNewLoad_Click" /> </div> |
FrmPageLoad.aspx.cs |
//처음 로드(NewLoad)와 다시 게시(PostBack) protected void Page_Load(object
sender, EventArgs
e) {
//처음 로드된 상태라면
if (Page.IsPostBack == false) //다시 게시가 아니라면,
{
Response.Write("[1] 처음 로드되었습니다.<br />");
}
//같은 방법을 다른 코드로....
if (!Page.IsPostBack) //다시 게시가 아니라면,
{
Response.Write("[2] 처음 로드되었습니다.<br />");
}
if (!IsPostBack) //다시 게시가 아니라면,
{
Response.Write("[3] 처음 로드되었습니다.<br />");
}
//다시 게시 상태라면
if (Page.IsPostBack == true)
{
Response.Write("[4] 포스트백(다시게시) 되었습니다. <br />");
}
//처음로드 <> 다시게시
if (!Page.IsPostBack)
{
Response.Write("[5] 처음 로드되었습니다. <br />");
}
else
{
Response.Write("[6] 포스트백(다시게시) 되었습니다. <br/>");
}
//[!] Page_Load() 이벤트 처리기는 처음 로드하거나
// 버튼이 클릭할 때마다 실행
Response.Write("[7] 폼이 로드할 때마다 실행 <br />"); } protected void btnPostBack_Click(object sender, EventArgs
e) {
//Page.ClientScript.RegisterClientScriptBlock()
: 자바스크립트 호출
string strJs = @" <script> alert('포스트백'); </script> ";
//Page 클래스로 부터 상속 받기 때문에 생략 가능하다.
//RegisterClientScriptBlock msdn에서 찾아서 검색하기
Page.ClientScript.RegisterClientScriptBlock(
this.GetType(), "msg", strJs); } protected void btnNewLoad_Click(object sender, EventArgs
e) {
//현재 페이지로 다시 이동 : 다시 로드
//한 번 깜빡이고 로드
Response.Redirect(Request.ServerVariables["SCRIPT_NAME"]); } |
결과화면 |
[그림14-1] |
'ASP.NET' 카테고리의 다른 글
16.C# ASP.NET - Lable 컨트롤 [WebStandardControl] (0) | 2009.10.06 |
---|---|
15.C# ASP.NET - Lable, TextBox, Button 컨트롤 [WebStandardControl] (0) | 2009.10.06 |
13.C# ASP.NET - Application.Session (0) | 2009.10.05 |
12.C# ASP.NET - Server.Execute (0) | 2009.10.05 |
11.C# ASP.NET - Server.MapPath (0) | 2009.10.05 |
Comments