</script>
(2)<input type='text' id='charge' style='width:70px;' value='이름'/>
(1)<input type="button" value="조회" onclick="popupWindow();"/>
------------------------------------------------
-- test2.html ((자식))
<script>
(3)function submitCharge(val1){
(4)window.opener.document.getElementById("charge").value = val1;
(5)self.close();
}
</script>
(PHP 코드 부분은 간단하게 바꿔보았습니다)
$query = ...;
$result = ...;
while($row = mysql_fetch_array($result)){
echo "<input type='text' name='i_charge' value='$row[name]'/>
(6)<input type='button' value='선택' onclick='submitCharge('$row[name]');' />";
}
------------------------------------------------
(1). 부모에서 popupWindow() 함수를 통해 간단하게 팝업창을 열어주고 부모와 자식 관계를 만들어줍니다.
(2). 자식에서 데이터를 부모로 넘겨주면 작성이 되어질 부분을 만들어놓습니다.
(3). submitCharge() 라는 함수를 만들어놓고 인자를 하나 받아옵니다.
(4). 받아오는 인자는 부모에서 'charge' 라는 id 값을 가지고 있는 엘리먼트에 값을 전송합니다.
(5). 과정이 끝나고 자식창을 직접 셀프 종료합니다.
(6). 함수를 호출하며 인자로 해당 값을 보내줍니다.
위의 과정을 통해 자바스크립트를 이용해 배열도 작성이 되어 있는 부분에서 해당 값을 자식에서 부모로 전달해줍니다.
응용을 하면 마찬가지로 부모에서 자식으로 데이터를 전달해주는 부분도 쉽게 개발이 가능합니다.
window.opener.document.getElementById("charge").value 이 부분에서 혹여나 name 에 해당하는 값을 불러오고 싶으시다면
window.opener.document.getElementsByName("charge").value 왼쪽과 같이 사용하시면 됩니다!
이 부분에서 저만 애를 먹은건지, 다른 분들도 애를 먹으셨던건지...더 좋은 방법이 있으면 공유해주시면 감사하겠습니다!
js, jquery 'opener' 관련 함수 - http://wendy81.tistory.com/160
html 'id', 'name' 관련 내용 - http://lucetedaniel.tistory.com/69
열공 :)