2014-03-31 4 views
1

나는 간단하고 간단한 것을 놓치고 있지만, 탭 패널을 사용하는 xpages에서는 사용자가 페이지를 인쇄 할 때 모든 탭을 누가 인쇄해야합니까?xpages 탭 패널 인쇄

+5

인쇄용 특수 페이지를 만드십시오. 숨겨진 탭은 페이지 (DOM)의 일부가 아니기 때문에 일반적인 CSS 마법은 도움이되지 않습니다. –

+2

또한 표준 탭 패널 구성 요소 (Dojo 탭 컨테이너와 대조적으로)를 사용하는 경우 선택되지 않은 탭의 내용은 DOM에도 없습니다 ... 전체 새로 고침 이벤트가 필요합니다. 새롭게 선택된 탭. 그 시점에서, 이전에 선택되고 있던 탭의 데이터는, DOM에 없어졌습니다. 참고로 첫 번째로 인쇄 할 필요가 있다는 것을 확인 했습니까? 게다가, 물론, "우리는"하고 싶습니까? –

답변

7

표준 탭 패널 대신 Dojo 탭 컨테이너 (확장 라이브러리의 일부)를 사용할 수 있습니다. Dojo 탭 컨테이너를 사용하면 모든 탭의 내용이 한 번에로드되므로 (Tim과 마찬가지로 표준 탭 패널의 반대쪽에 있음) 인쇄 할 때 모든 탭을 표시 할 수있는 CSS 마법을 사용할 수 있습니다.

인쇄용으로 별도의 XPage를 만드는 것이 좋습니다. 사용자 정의 컨트롤의 탭 내용을 구성하고 접미어 "_print"와 같은 새 XPage를 만들고 탭 패널없이 사용자 정의 컨트롤을 포함시킵니다. 그런 다음 첫 번째 XPage에서 단추, 링크 또는 기타를 작성하여 새 창에 "_print"와 같은 이름의 XPage를 여는 간단한 방법을 사용하십시오.

"_print"Xpage에서 페이지가로드 된 후 "window.print"를 사용하여 인쇄 대화 상자를 자동으로 열 수 있습니다.

이 기술은 필요에 따라 정확하게 인쇄 스타일을 지정할 수 있다는 이점이 있습니다. visible/rendered 속성을 사용하여 인쇄 할 때 포함 할 내용을 제어하고 현재 페이지 이름에 "_print"가 포함되지 않은 경우에만 컨트롤을 렌더링하도록 계산할 수도 있습니다.

+0

두 번째 페이지가 생성되었으며, 챔피언처럼 작동합니다. 내가 이전에이 문제에 어떻게 대처하지 않았는지 모르겠지만, 누군가는 클라이언트와 함께 병원에 인쇄 된 정보를 가져올 수 있기를 원합니다. 따라서이 경우에는 인쇄 할 필요가 있습니다. –

+0

나는 ExtLib 대화 상자 컨트롤과 비슷한 것을하려고합니다. viewScope var을 사용하여 Dialog 컨트롤에서 문서를 엽니 다. 대화 상자 컨트롤에 인쇄 단추가 있습니다. 인쇄 버튼을 사용하여 인쇄 xpage를 시작했지만 인쇄 xpage에 데이터를 표시하는 데 문제가 있습니다. 어떤 아이디어? –