Develop
2013.04.23 15:10
[js] 셀렉트박스(select)의 옵션(option) 동적으로 추가/제거
조회 수 8060 댓글 0
첨부 '1' |
---|
좋은 예제인듯..
아래는 주요 함수 부분임~
<script> /* *Source Select의 요소(option)를 Target Select로 복사한다. */ function copyElement(sourceObj, targetObj){ var elms = sourceObj.options; for( i = 0, k = elms.length; i < k; i++ ){ if( elms[i].selected ){ targetObj.add(new Option(elms[i].text, elms[i].value, false, false)); } } sourceObj.selectedIndex=-1; } /* *Source Select의 요소(option)를 제거한다. */ function removeElement(sourceObj){ var elms = sourceObj.options; var posArr = new Array(); var increase = 0; for( i = 0, k = elms.length; i < k; i++ ){ if( elms[i].selected ){ posArr[increase++] = elms[i].value; } } for( i = 0, k = posArr.length; i < k; i++ ){ for( x = 0, y = elms.length; x < y; x++ ){ if( (posArr[i] == elms[x].value) && elms[x].selected ){ sourceObj.remove(x); x = 0; y--; } } } } /* *Source Select의 요소(option)를 Target Select로 이동한다. */ function moveElement(sourceObj, targetObj, isSort){ var elms = sourceObj.options; for( i = 0, k = elms.length; i < k; i++ ){ if( elms[i].selected ){ targetObj.add(new Option(elms[i].text, elms[i].value, false, false)); } } removeElement(sourceObj); sourceObj.selectedIndex = -1; } /* *Source Select의 요소(option)의 상하순서를 바꾼다. */ function move_option_in(src,to) { if(!src)return; var src_index = src.selectedIndex; if(src_index<0)return; if(to == "up"){ if(src_index==-1||src_index==0)return; var tempoption = new Option(src.options[src_index].text, src.options[src_index].value); src.options[src_index] = new Option(src.options[src_index-1].text, src.options[src_index-1].value); src.options[src_index-1]=tempoption; src.options[src_index-1].selected=true; }else if(to == "down"){ if(src_index>=src.options.length-1)return; var tempoption = new Option(src.options[src_index].text, src.options[src_index].value); src.options[src_index] = new Option(src.options[src_index+1].text, src.options[src_index+1].value); src.options[src_index+1]=tempoption; src.options[src_index+1].selected=true; } } </script>
번호 | 분류 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|---|
313 | Develop | [c++] 채팅로봇 소스.. ㅋㄷㅋㄷ | hooni | 2013.04.23 | 8880 |
312 | Develop | [c++] 바탕화면 테두리에 자석처럼 붙는 스냅효과.. | hooni | 2013.04.23 | 8906 |
311 | Develop | [js] 밀리터리 프로그램(전역일 계산) 7 | hooni | 2013.04.23 | 8910 |
310 | Develop | [js] 객체 머지.. | hooni | 2013.12.17 | 8965 |
309 | Develop | [c][java] 주사선 채우기 알고리즘(scan line filling algorithm) 구현 | hooni | 2013.04.23 | 8968 |
308 | Develop | [c] 간단한 채팅(클라이언트/서버) 프로그램 소스 | hooni | 2003.04.23 | 9068 |
307 | Develop | [c] OpenGL 직사각형(2D) 크기 확대/축소 | hooni | 2003.04.23 | 9070 |
306 | Develop | [c] 디피-헬만 키교환(Diffie–Hellman key exchange) 샘플 코드.. ㅋㄷ | hooni | 2013.04.23 | 9111 |
305 | Develop | [c++] mfc 윈도우에서 ODBC 사용하여 MDB파일 읽기.. ㅋㅋ | hooni | 2013.04.23 | 9120 |
304 | Develop | 다운 받아서 테스트 해볼것.. | hooni | 2013.04.23 | 9143 |
303 | Develop | [c] 하노이탑 - 재귀함수 | hooni | 2003.04.23 | 9153 |
302 | Develop | [php] URL/URI 관련 환경변수 | hooni | 2003.04.23 | 9163 |