부모창 forms input value를 자식창 input value에 넣고싶어요.

부모창 forms input value를 자식창 input value에 넣고싶어요.

QA

부모창 forms input value를 자식창 input value에 넣고싶어요.

답변 2

본문

c45c130a46a0df53d594dbf3011bff39_1460110363_552.PNG 

처음에 1번과 2번을 하나의 for문에서 돌리고자 하였으나

하나의 for문에서 돌리면 먼저한 것만 값이 넣어지더라고요.

그래서 그림과 같이 두개의 for문으로 나누어서 해보았으나

하나의 for문으로 돌렸을때와 같은 결과가 나왔습니다...

도대체 왜 이런일이 일어난 걸까요..???

하나의 for문으로 두개의 값을 넣게끔 할 수는 없나요?

 

하나의 for문으로 시도했을때의 소스코드는 아래와 같습니다.


<script src="/renew/js/jquery-1.8.3.min.js"></script>
<script type="text/javascript">
$(function(){
	var formTag = window.opener.document.forms;
	
	for(var i=1; i<formTag.length; i++){
		if(formTag[i].item_id.value){
			document.citem_popup_option.it_id.value = formTag[i].item_id.value;
			return;
		}
		if(formTag[i].form_index.value){
			document.citem_popup_option.it_option_subject.value = formTag[i].form_index.value;
			return;
		}
	}
 
});
 
</script>

 

return 때문에 하나에만 원하는대로 적용이 되는거 같은데...

어떻게 해야할까요..

이 질문에 댓글 쓰기 :

답변 2

좀 더 정확하게는 이렇게 하세요..


var check1 = false;
var check2 = false;
for(var i=1; i<formTag.length; i++){
   if(formTag[i].item_id.value && check1 == false){
      document.citem_popup_option.it_id.value = formTag[i].item_id.value;
      check = true;
   }
  
   if(formTag[i].form_index.value && check2 == false){
      document.citem_popup_option.it_option_subject.value = formTag[i].form_index.value;
      check2 = true;
   }

   if(check1 == true && check2 == true){
      break;
   }
}  

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 2,074
© SIRSOFT
현재 페이지 제일 처음으로