채택완료

load 이벤트 여러개를 실행하는데 맨위 하나빡에 처리가 되지 않아 문의드립니다.

2017-12-21 (목) 10:13:25 2,087
Copy
<script type="text/javascript">
var funList = new Array();

function callFunction()
{
for(var i = 0; i < funList.length; i++)
{funList[i]();}
}

function addLoadEvent(fun)
{funList[funList.length] = fun;}

           var count1 = 0;
           
           function addForm1(){
                     var addedFormDiv1 = document.getElementById("addedFormDiv1");
                     var str = "";
                     str+="<div class='col-md-12 col-sm-12 qmanse_layer' style='padding-top:0px; padding-left:0px;'><div class='col-md-12 col-sm-12'><div class='col-md-2 col-sm-2 qmanse_q' style='padding-left: 0px; margin-bottom:16px; padding-top: 10px; padding-bottom: 10px;'>관계    </div> <div class='col-md-2 col-sm-2 ' style='padding-right: 0px; padding-top: 7px;  padding-bottom: 10px;  padding-left: 9px;' > <input style='border-radius: 4px;  height: 32px;' type='text' name='Ninput11_"+count1+"' value='<?php echo $write['input11_"+count1+"'] ?>' id='Ninput11_"+count1+"' class='frm_input' size='50' maxlength='100'></div></div></div>";

                     // 추가할 폼(에 들어갈 HTML)
                     var addedDiv1 = document.createElement("div"); // 폼 생성
                     addedDiv1.id = "added_"+count1; // 폼 Div에 ID 부여 (삭제를 위해)
                     addedDiv1.innerHTML  = str; // 폼 Div안에 HTML삽입
                     addedFormDiv1.appendChild(addedDiv1); // 삽입할 DIV에 생성한 폼 삽입
                     count1++;
                     document.baseForm1.count1.value=count1;
           }        


           function delForm1(){
                     var addedFormDiv1 = document.getElementById("addedFormDiv1");
                     if(count1 >1){ // 현재 폼이 두개 이상이면
                                var addedDiv1 = document.getElementById("added_"+(--count1));
                                // 마지막으로 생성된 폼의 ID를 통해 Div객체를 가져옴
                                addedFormDiv1.removeChild(addedDiv1); // 폼 삭제 
                     }else{ // 마지막 폼만 남아있다면
                                document.baseForm1.reset(); // 폼 내용 삭제
                     }
           }

           var count2 = 0;
           function addForm2(){
                     var addedFormDiv2 = document.getElementById("addedFormDiv2");
                     var str = "";
                     str+="<div class='col-md-12 col-sm-12 qmanse_layer' style='padding-top:0px; padding-left:0px; border-top:#408fde solid 2px; '><div class='col-md-3 col-sm-3 qmanse_q'>대학교/대학원    </div><div class='col-md-9 col-sm-9 qmanse_q'  style='     padding-top: 10px;'><div class='col-md-3 col-sm-3 qmanse_q'>학교명</div>                                <div class='col-md-3 col-sm-3' style='    padding-top: 10px;'><input style='border-radius: 4px; height: 32px;  font-size: 13px;' type='text' name='Ninput20_"+count2+"' id='Ninput20_"+count2+"' value='<?php echo $write['input20_"+count2+"']?>'  class='frm_input' >                            </div>";
                     


                     // 추가할 폼(에 들어갈 HTML)
                     var addedDiv2 = document.createElement("div"); // 폼 생성
                     addedDiv2.id = "added_"+count2; // 폼 Div에 ID 부여 (삭제를 위해)
                     addedDiv2.innerHTML  = str; // 폼 Div안에 HTML삽입
                     addedFormDiv2.appendChild(addedDiv2); // 삽입할 DIV에 생성한 폼 삽입
                     count2++;
                     document.baseForm2.count2.value=count2;
           }        
           function delForm2(){
                     var addedFormDiv2 = document.getElementById("addedFormDiv2");
                     if(count2 >1){ // 현재 폼이 두개 이상이면
                                var addedDiv2 = document.getElementById("added_"+(--count2));
                                // 마지막으로 생성된 폼의 ID를 통해 Div객체를 가져옴
                                addedFormDiv2.removeChild(addedDiv2); // 폼 삭제 
                     }else{ // 마지막 폼만 남아있다면
                                document.baseForm2.reset(); // 폼 내용 삭제
                     }
           }


           var count3 = 0;
           function addForm3(){
                     var addedFormDiv3 = document.getElementById("addedFormDiv3");
                     var str = "";
                     str+="<div class='col-md-3 col-sm-3 '><div class='col-md-12 col-sm-12 qmanse_q' style='padding-right: 0px; padding-left:0px;'>근무처</div>                                <div class='col-md-12 col-sm-12 qmanse_q' style='    padding-top: 10px;'><input style='border-radius: 4px; height: 32px;  font-size: 13px;' type='text' name='Ninput27_"+count3+"' id='Ninput27_"+count3+"' value='<?php echo $write['input27_"+count3+"']?>'  class='frm_input' ></div>                                                                        <div class='col-md-12 col-sm-12 qmanse_q'>재직여부</div><div class='col-md-12 col-sm-12' style='margin-bottom:16px; padding-top: 10px; padding-bottom: 10px;  '><select name='Nselect20_"+count3+"' value='<?php echo $write['select20_"+count3+"'] ?>' id='Nselect20_"+count3+"' class='form-control input-sm '><option value='재직'> 재직 </option><option value='퇴사'> 퇴사 </option></select></div></div>";


                     // 추가할 폼(에 들어갈 HTML)
                     var addedDiv3 = document.createElement("div"); // 폼 생성
                     addedDiv3.id = "added_"+count3; // 폼 Div에 ID 부여 (삭제를 위해)
                     addedDiv3.innerHTML  = str; // 폼 Div안에 HTML삽입
                     addedFormDiv3.appendChild(addedDiv3); // 삽입할 DIV에 생성한 폼 삽입
                     count3++;
                     document.baseForm3.count3.value=count3;

           }        
           function delForm3(){
                     var addedFormDiv3 = document.getElementById("addedFormDiv3");
                     if(count3 >1){ // 현재 폼이 두개 이상이면
                                var addedDiv3 = document.getElementById("added_"+(--count3));
                                // 마지막으로 생성된 폼의 ID를 통해 Div객체를 가져옴
                                addedFormDiv3.removeChild(addedDiv3); // 폼 삭제 
                     }else{ // 마지막 폼만 남아있다면
                                document.baseForm3.reset(); // 폼 내용 삭제
                     }
           }

 

addLoadEvent(addForm1);
addLoadEvent(addForm2);
addLoadEvent(addForm3);
</script>

인터넷 검색을 통해 온로드이벤트를 여러개 쓸 수 있는 코드라고 가져왔는데요,

addLoadEvent(addForm1); 에 해당하는 이벤트밖에 발생하지 않습니다.

addLoadEvent(addForm1); 를 지우니 addLoadEvent(addForm2);가 적용되었습니다.

모두 발생시키려면 어떻게 해야할까요 ㅠㅠ

|

답변 1개 / 댓글 2개

채택된 답변
+20 포인트
jquery 에 ready 를 쓰면 해결될텐데요..
 
onLoad 는 브라우져에 따라 조금 다르게 동작합니다.
Copy
$(document).ready(function() {

    addForm1();

    addForm2();

    addForm3();

} );

답변에 대한 댓글 2개

해봤던거 같은데.... 말씀주신대로 하니 너무 잘되네요....
아흑으으으으 !!!

감사합니다 ㅠㅠ
전에 안됬다면.. 아마도 다른 변수가 있었나보네요 ^^

답변을 작성하려면 로그인이 필요합니다.