Where The Streets Have No Name

createPopup을 이용하여 버튼 클릭시 "처리중입니다" 메시지 보여주기 본문

Developement/Web

createPopup을 이용하여 버튼 클릭시 "처리중입니다" 메시지 보여주기

highheat 2006. 4. 16. 20:02

<script language=javascript>
<!--
function ButtonProcessing()
{
  try{               
          oPopup = window.createPopup();
          var  oPopBody  =  oPopup.document.body;
          oPopBody.style.backgroundColor  =  "white";
          oPopBody.style.border  =  "solid  #dddddd 1px";

 

            // "처리중입니다"라는 메시지와 로딩이미지가 표시되도록 한다.
            oPopBody.innerHTML  = "<table width='100%' height='100%'><tr><td align='center' style='font-size:9pt;'>처리중입니다. 잠시만 기다려주세요...<br><img src='http://localhost/img/processbar.gif'></td></tr></table>";

 

            var leftX = document.body.clientWidth/2 - 150;
          var topY = (document.body.clientHeight/2) - (oPopBody.offsetHeight/2);

            oPopup.show(leftX,  topY,  300,  150,  document.body);

 

            // createPopup()를 이용해 팝업페이지를 만드는 경우
          // 기본적으로 해당 팝업에서 onblur이벤트가 발생하면 그 팝업페이지는 닫히게 됩니다.

            // 해당 팝업페이지에서 onblur이벤트가 발생할때마다  메소드를 재호출하여

            // 팝업페이지가 항상 표시되게 합니다.
          oPopBody.attachEvent("onblur", ButtonProcessing);
  }
  catch(e) {}
}

 

 //버튼을 클릭했는지 여부를 나타내는 변수로 처리이벤트는 한번만 실행하도록 하기위해서 사용
var IsClick=false;

 

function ButtonSubmit()  //버튼 클릭시 실제로 처리해야할 메소드
{
  if(!IsClick)
  {
          //처리해야할 내용 코드
    }
  else
  {
      alert("프로세스가 작동중입니다. 잠시 기달려주세요.");
      return false;
  }
  if(confirm('정말로 000처리를 하시겠습니까?'))
  {
      IsClick = true;  //버튼 처리를 수행중..
        ButtonProcessing();  //처리상태를 표시하는 메소드 호출
        return true;
  }
  else
      return false;
}
//-->
</script>