웹페이지 작업을 하다 보면, 출력 버튼이 있고

출력 버튼 클릭시, 특정 영역의 데이터만 프리트 해야 하는 경우가 있다.

이럴 경우에는 아래 2가지 방법을 활용하면 된다.

특정 div를 출력할때는 divPrint(), 특정 iframe 내용을 출력할때는 iframePrint3()

 

아이프레임 프린트하기/아이프레임출력/특정영역출력/프린트함수/아이프레임프린트

 

<html>
<body>
    <script>

        function divPrint() {
            var inbody = document.body.innerHTML; // 이전 body 영역 저장
            window.onbeforeprint = function () { // 프린트 화면 호출 전 발생하는 이벤트
                document.body.innerHTML = document.getElementById('targetDiv').innerHTML; // 원하는 영역 지정
            }
            window.onafterprint = function () { // 프린트 출력 후 발생하는 이벤트
                document.body.innerHTML = inbody; // 이전 body 영역으로 복구
            }
            window.print();
        }

        function framePrint3() {
            window.frames["frmTest"].focus();
            window.frames["frmTest"].print();
        }
    </script>
    <a href="#" onclick="javascript:divPrint();">특정div출력</a><br />
    <a href="#" onclick="javascript:framePrint3();">아이프레임내용출력</a><br />
    <h1>div 영역</h1>
    <DIV ID="targetDiv" STYLE="BORDER:1PX SOLID RED; WIDTH:500PX; HEIGHT:100PX;FLOAT:LEFT;">
        DIV내용
    </DIV>
    <div id="" style="height:500px; display:block;">
        <h1>아이프레임 영역</h1>
        <iframe src="printinner.asp" id="frmTest" name="frmTest"
            style="width:500px; height:500px; border:1px solid red;float:left; ">
    </div>
</body>
</html>

<%option explicit %> 를 asp 페이지에 상단에 추가함으로써 선언되지 않은 변수의 사용을 막는다.

코드가 길어지는 경우, 유지 보수에 도움이 된다. ( 변수가 의도와 다르게 사용되는 경우, 혼용 되는 경우를 막음 )

<% option explicit %>

Dim name
name="당꿈응"

Response.Write name

phone = "010-1234-5678" '선언되지 않은 변수사용으로 에러발생

Rs 에 계속 접근하기 보다는 배열에 복사에서 사용하는 것이 DB의 부담을 줄일 수 있다고 한다!!

 

Set Rs2 = Db.Execute(query2)

Dim arrRs '배열 선언

If Not Rs2.EOF Then arrRS = Rs2.GetRows()  '배열에 복사

Rs2.close

Set Rs2 = Nothing




If IsArray(arrRS) Then

  For i = LBound(arrRS, 2) To UBound(arrRS, 2)

    Response.Write arrRS(0, i)

    Response.Write arrRS(1, i)

 Next




Erase arrRS

End if

 

 

 

 

   create table #tmp ( name nvarchar(10), pwd nvarchar(10))
   
   insert into #tmp values ('강감찬','111')
   insert into #tmp values ('김유신','222')
   insert into #tmp values ('이순신','333')
   
   DECLARE @Target_name nvarchar(10)
   
   DECLARE CUR CURSOR
   FOR SELECT name FROM #tmp
   
   OPEN CUR;
   
   Fetch Next From CUR into @Target_name
   
   While(@@FETCH_STATUS <> -1)
   BEGIN
	PRINT @Target_name
	
	FETCH NEXT FROM CUR INTO @Target_name
   END
   
   
   Close CUR;
   Deallocate CUR;

 

 

+ Recent posts