html을 인쇄하기 전에 결과를 생성하는 데 오랜 시간 (30 초)이 걸리는 CGI 스크립트가 있습니다. 결과를 표시하기 전에 애니메이션 GIF로 '로드 중입니다 ... 기다려주십시오 ...'라는 중간 페이지를 표시하고 싶습니다. 감사합니다.CGI가 실행되는 동안 "대기중인 페이지"를 표시하는 방법은 무엇입니까?
4
A
답변
4
프로세스를 포크하고 세션에 대한 참조를 유지합니다. 그런 다음 주기적으로 상태 업데이트를 위해 스크립트를 폴링합니다.
원래는 Linux Magazine에 게시 된 코드 예제가 more detailed explanation입니다. 펄 몽크는 further discussion입니다.
전체 페이지를 다시로드하는 대신 JavaScript (및 XMLHttpRequest)를 사용하여 폴링을 수행 할 수 있습니다 (단, build on things that work 기억).
+1
+1 non-AJAXy 옵션 – DVK
4
0
고마워, 내가 한 일이 :
<script type="text/javascript">
var ray={
ajax:function(st)
{
this.show('load');
},
show:function(el)
{
this.getID(el).style.display='';
},
getID:function(el)
{
return document.getElementById(el);
}
}
</script>
<style type="text/css">
#load{
position:absolute;
z-index:1;
border:3px double #999;
background:#f7f7f7;
width:300px;
height:300px;
margin-top:-150px;
margin-left:-150px;
top:50%;
left:50%;
text-align:center;
line-height:300px;
font-family:"Trebuchet MS", verdana, arial,tahoma;
font-size:18pt;
}
</style>
<div id="load" style="display:none;">Loading... Please wait<br/><img src="images/loading.gif"></div>
<form action="http://localhost/cgi-bin/test.cgi" method="get" onsubmit="return ray.ajax()">
<input type="text" value="Test" name="q">
<input type="submit" value="Search">
</form>
관련 문제
- 1. 긴 SQL 쿼리가 실행되는 동안 경과 시간을 표시하는 방법은 무엇입니까?
- 2. 자바 : 페이지를 표시하는 동안 POST 요청을 보내는 방법은 무엇입니까?
- 3. DIV를 표시하는 동안 기본 페이지를 사용 중지하는 방법은 무엇입니까?
- 4. UIWebView가로드되는 동안 설정 이미지를 표시하는 방법은 무엇입니까?
- 5. ASP.NET에서 페이지를 다시로드하는 동안 버튼 이벤트 기능이 실행되는 이유는 무엇입니까?
- 6. 승인을 위해 대기중인 페이지를 프로그래밍 방식으로 가져 오는 방법은 무엇입니까?
- 7. 페이지를 수정하여 IE7에서 올바르게 표시하는 방법은 무엇입니까?
- 8. iPhone에서 웹 페이지를 표시하는 방법은 무엇입니까?
- 9. uiwebview를 사용하여 웹 페이지를 표시하는 방법은 무엇입니까?
- 10. 안드로이드에 목록 개체 페이지를 표시하는 방법은 무엇입니까?
- 11. blockui를 사용하는 동안 툴팁을 표시하는 방법은 무엇입니까?
- 12. PHP 스크립트가 실행되는 동안 페이지 표시를 새로 고치는 방법은 무엇입니까?
- 13. cgi가 죽었습니까?
- 14. asp.net mvc에서 일부 코드가 실행되는 동안 페이지를 어떻게 표시합니까?
- 15. PHP CGI가 확장자를로드하지 않습니다
- 16. 플래시 소켓에 연결된 동안 대기중인 Ajax 호출
- 17. C# 프로그램이 실행되는 동안 생성되는 패널에 도달하는 방법은 무엇입니까?
- 18. 응용 프로그램이 실행되는 동안 setUndecorated()를 호출하는 방법은 무엇입니까?
- 19. 주 보고서가 ireport에서 실행되는 동안 하위 보고서를 컴파일하는 방법은 무엇입니까?
- 20. WinDbg에서 실행되는 동안 각 함수 호출을 인쇄하는 방법은 무엇입니까?
- 21. 웹 서비스가 실행되는 동안 상태 정보를 보내는 방법은 무엇입니까?
- 22. 호출 된 실행 파일이 실행되는 동안 호출하고 닫는 방법은 무엇입니까?
- 23. 응용 프로그램이 실행되는 동안 mysql 데이터베이스를 백업하는 방법은 무엇입니까?
- 24. 앱이 백그라운드에서 실행되는 동안 AVPlayer 오류를 처리하는 방법은 무엇입니까?
- 25. 대기중인 스레드가 어떤 모니터인지 보는 방법은 무엇입니까?
- 26. 대기중인 커서를 textBox에서 제거하는 방법은 무엇입니까?
- 27. 대기중인 C++ 0x 스레드를 인터럽트하는 방법은 무엇입니까?
- 28. 대기중인 마우스 이벤트 무시
- 29. PHP : 스크립트가 끝나기 전에 페이지를 표시하는 방법은 무엇입니까?
- 30. CGI가 표시하는 임시 파일 (이미지)을 제거하려면 어떻게해야합니까?
그래서 당신은 자바 스크립트 ('아약스')를 살펴 있어야합니다. – home
당신이하고있는 일을 모두 삭제하고 jQuery (tm)를 사용해야합니다 : – DVK