IEO Menu
Info
Login
:: 전체게시물
:: HTML 특수문자
C/C++
Javascript
IT/TIP
개발/TIP
개발/리눅스관리
OSX/Windows
잡담/잡동사니
라이딩일기
자가정비/튜닝
유머사진 모음
HTML Select Box, 셀렉트 박스를 DIV/HTML로
Read: 12661
2016-08-30 16:29:33
심심해서, Select box 를 HTML 로 구현했다.
그렇게 구현하는 이유는 Option 안에 이미지 출력이나, 필요한 HTML 처리 등이 어렵기 때문이다.
그리고 디자인도 원하는 대로 바꿀수 있고...
non-jquery 처리하려다 귀찮아서.. 그냥.. jQuery 버전이다.
적당히 이용하면 된다.
<?php function htmlSelectBox(&$array,$name='',$def='',$option='') { $TITLE=''; $OP=''; foreach($array as $v) { if(!$TITLE || $DEF==$v['KEY']){$TITLE=$v['VAL'];} $OP.='<div class="InputSelectOptionList" data-value="'.$v['KEY'].'">'.$v['VAL'].'</div>'; } $H='<div class="InputSelect">'; $H.='<input type="hidden" name="'.$name.'" value="'.$def.'" class="InputSelectValue">'; $H.='<div class="InputTitle"'.$option.'>'.$TITLE.'</div>'; $H.='<div class="InputSelectOption">'.$OP.'</div>'; $H.='</div>'; return $H; } ?>
<style> .InputSelect { display:block; position:relative; width:100%; } .InputSelect .InputTitle { width:100%; height:24px; cursor:pointer; line-height:22px; background-color: #fff; padding:0px 10px; border-radius:4px; border:1px solid #ccc; border-right:5px solid #ccc; } .InputSelect .InputSelectOption { display:none; position:absolute; width:100%; background:#fff; border:1px solid #888; border-radius:4px; top:25px; left:0px; overflow:hidden; box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5); z-index:10; } .InputSelect .InputSelectOptionList { border-bottom:1px solid #ddd; padding:0px 10px; line-height:28px; color:#888; cursor:pointer; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;white-space:nowrap;word-wrap:normal; } .InputSelect .InputSelectOptionList:hover { background:#eee; } .InputSelect .InputSelectOptionList:last-child { border-bottom:0px; } </style> <script> $(document).ready(function(){ $(".InputSelect").click(function(){ $(this).children('.InputSelectOption').toggle(); }); $(".InputSelectOptionList").click(function(){ var nid=$(this).parent().parent(); if(!nid){return;} var nid_title=nid.children('.InputTitle'); var nid_value=nid.children('.InputSelectValue'); if(nid_title) { nid_title.html($(this).html()); } if(nid_value) { nid_value.val($(this).data('value')); } }); }); </script>
사이트에 맞게 디자인 하고, 드롭다운 화살표를 첨가하면 좀더 좋아질것이고.. 드롭다운 애니메이션을 넣으면 더 좋아질것이다.
목록
이전
다음
엔진오일을 규정이상 사용하지 말아야하는 이유.
2016-11-23 10:22:17
아이들링 불안정 및 RPM 이 치솟는 현상 해결 방법.
2~3만km 를 타면 배터리 충방전이 원활하지 못하게 된다. 미라쥬 기준으로 4 ... more
2016-10-16 16:23:45
[PHP] 배열에서 isset 사용시 오류 해결방법
isset 은 배열 요소 또는 변수의 값이 null 이면 isset 으로 배열요소나 변수의 ... more
2016-09-22 11:56:00
[자바스크립트] 상위개체(FORM) 찾기
<script> function getParentForm(obj) { switch(obj.parentNode.tagName) { case ' ... more
2016-09-08 12:47:51
알리익스프레스 뭐야 이거 무서워 ㅋㅋㅋㅋㅋ
2016-09-06 11:19:32
[리눅스 명령어] find / 파일 찾기
서버에서 작업하다보면 문서내 특정 부분들을 찾아야할 때가 있다. 주로 ... more
2016-09-06 09:58:14
자바스크립트 / parseInt 대체함수 intval
자바스크립트의 parseInt 는 숫자가 아닌 값을 NaN 값이나 Infinity 값을 넘겨주 ... more
2016-08-30 16:32:09
JQuery (File/Image) 파일/이미지 입력(File Input) 체크
언제부터인가 브라우저에서 직접 파일 경로를 숨기면서 파일 컨트롤이 어 ... more
2016-08-24 11:09:01
Vertical-align 의 사용법
2016-08-16 08:44:32
풀프레임노이즈 비교.
2016-08-13 11:00:32
<<
<
0
1
2
3
4
>
>>
토쳐라이딩 | IEO.KR
IEO.KR의 사전 서면동의 없이 IEO.KR 사이트의 일체의 정보, 콘덴츠 및 UI등을 상업적 목적으로 전재, 전송, 스크래핑 등 무단 사용할 수 없습니다.