팝업창으로 POST 전송 후, 파이썬 CGI로 출력
글쓴이: sagonam / 작성시간: 월, 2016/10/17 - 6:42오후
안녕하세요, 파이썬 CGI를 이용하여 간단한 웹사이트를 구성 중인데요.
메인 페이지에서 팝업창으로 데이터를 전송하려 하는데, 구현이 되지 않아 도움을 구합니다.
IE에서는 동작을 하는데, 파이어폭스와 크롬에서는 동작하지 않네요.
(TypeError : form is null 발생합니다.)
조언 부탁 드립니다...
1. 메인페이지 코드
<script type="text/javascript"> function popupWindow(form){ var url = "./customerinfo.cgi"; var title = "CustomerInfo"; var style = "width=972;"; window.open(url, title, style); form.submit(); }; </script> <body> <form action="./customerinfo.cgi" method="post" target="CustomerInfo"> <label onclick="javascript:popupWindow(this.form)" for="test"> <h>test</h> <input name="test" id="test" type="hidden" value="한글데이터"></input> </label></form> </body>
2. 파이썬코드
#!/usr/bin/python import cgi; import cgitb; cgitb.enable(); print "Content-Type: text/plain\r\n"; form = cgi.FieldStorage(); for name in form.keys(): print "Input: " + name + " value: " + form[name].value + ""; print "Finished!";
Forums:
해결
메인페이지 자바스크립트 코드 중, 함수 호출 부분을 수정하여 해결하였습니다.
추가
다음과 같이 수정해도 문제가 해결되네요.
(기존) javascript:popupWindow(this.form)
(수정) javascript:popupWindow(this.parentElement)
댓글 달기