Develop
2013.04.23 15:10
[js] 셀렉트박스(select)의 옵션(option) 동적으로 추가/제거
조회 수 9228 댓글 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>
번호 | 분류 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|---|
195 | Develop | [android] How can I place app icon on launcher home screen? | hooni | 2016.11.15 | 6364 |
194 | Develop | [android] 안드로이드 동영상 스트리밍 예제 2 | hooni | 2015.01.02 | 6247 |
193 | Develop | How to Test SMTP AUTH using Telnet | hooni | 2018.04.05 | 6223 |
192 | Develop |
XML, JSON, BSON, MSGPACK 장,단점 비교
![]() |
hooni | 2017.01.11 | 6208 |
191 | Develop | [ios] NSString, RegularExpression Find/Replace | hooni | 2017.04.14 | 6123 |
190 | Develop | Laravel 5 Failed opening required bootstrap/../vendor/autoload.php | hooni | 2018.01.24 | 6121 |
189 | Develop |
[android] 버전 별 앱 알림 설정으로 이동하는 방법
![]() |
hooni | 2016.11.28 | 6032 |
188 | Develop | [ios] Swift 4 Singleton inheritance | hooni | 2018.10.31 | 5924 |
187 | Develop | [ios] UITableView 특정 Row만 Update | hooni | 2014.04.08 | 5792 |
186 | Develop |
[php] Connect to Firebase Console in Laravel
![]() |
hooni | 2018.05.09 | 5732 |
185 | Develop |
[ios] 웹뷰 history.back() ㅋㄷ
![]() |
hooni | 2016.06.27 | 5671 |
184 | Develop | [js] show/hide 이벤트 감시 (Observing show/hide event) | hooni | 2021.02.03 | 5566 |