본문 바로가기

프로그래밍/자바스크립트

자바스크립트 동적 셀렉트박스 불러오기
















asp 를 이용한 자바스크립트와 제이쿼리 포스트를 이용한 동적 셀렉트 박스 불러오기 작업





먼저 html 부분




<select name="search"   id="conference_select" onchange="conference_check();"> 


<option value="" selected>선택</option>  


<option value="셀렉트박스값1">셀렉트박스값1</option>  


<option value="셀렉트박스값2">셀렉트박스값2</option>


<option value="셀렉트박스값3">셀렉트박스값3</option>  


</select>






<!--셀렉트박스의 값을 클릭하면 보여지게 될 태그-->


<div id="inter_menu" style="display:none;"></div>








*스크립트 부분




function conference_check(){




var cf_fm = document.conference_ins;


      var inter_m = document.getElementById("inter_menu");


var conference_name = cf_fm.search.value;




if(cf_fm.search.value == ""){  //셀렉트 값이 널일때


inter_m.style.display = "none"; 


}else{   //셀렉트 옵션값을 선택했을때


inter_m.style.display = "block"; 




jQuery.post("/conference/conference_name.asp",{"conference_name":conference_name},function(data,testStatus){  


if (data == "2") {


alert("등록된 내용이 없습니다"); 


} else { 



document.getElementById("inter_menu").innerHTML = data;


//inner html로 저위에 conference_name.asp에서 출력되어진 코드를 html화 한다.


 


}


});




}


}//function end








그리고 제이쿼리 포스트로 보낸 서버작업






conference_name = REQUEST("conference_name")  // 제이쿼리 포스트로 보낸 값을 받음




이 값으로 본인들의 쿼리에 맞게 작업함




ex)




 * 확인


strSql = ""


strSql = strSql & " SELECT count(aaaa) as aaaa    from tab   where    name = '"& conference_name &"' and del_flag='N' " 


Set RS1 = DBCONN.EXECUTE(strSql)




If RS1.eof Or RS1.bof Then


result = "1" ' 없으면


Else


result = "0" ' 있으면


End If




RS1.close


Set RS1=Nothing




    


If result = "0" Then     //등록된 코드가 있다면 출력


SQL = " SELECT *  "  


SQL = SQL & " FROM  tab  WHERE  name = '"&conference_name&"' and del_flag='N' " 


Set RS = DBCONN.EXECUTE(SQL) 




do until RS.EOF    //등록된 갯수만큼 반복해서 출력




 inter = " <INPUT TYPE='checkbox'  NAME='inter'  id='inter' VALUE='"&RS("CONFERENCE_WORD") &"'  />"&RS("CONFERENCE_WORD")&" <br/> "    //반복된만큼 저장함


RESPONSE.WRITE inter    //출력




RS.movenext


Loop 


RS.close


Set RS=Nothing


  


Else


 


RESPONSE.WRITE  "2"   '이미 삭제되었거나 없는




End If 














이렇게 사용하시면 되겠습니다.