2012-01-07 5 views
-1

div를 사용하여 교차 브라우저 UI로 작동하도록 <select /> 상자를 만들었습니다. 문제는 다른 선택 상자 안에 중첩 된 선택 상자를 필터링하는 방법을 찾을 수 없다는 것입니다. 즉, 클릭 한 요소에 대해서만 작동하도록하고 어린이에게는 적용되지 않게하십시오. http://jsfiddle.net/aspirinemaga/ejyRR/중첩 된 선택 상자

것은 그들이 그런 식으로 작동하도록 하시겠습니까 : 여기

는 데모입니다

<div class="gui-selectbox"> 
    SELECTBOX1 
    <div class="gui-selectbox">SELECTBOX2</div> 
</div> 

내가 쉽게 알고,하지만 난 그것이 작동 할 수있는 권한 선택기를 찾을 수 없습니다 . 도움과 시간을 미리 보내 주셔서 감사합니다.

편집 - 2 데모 : 여기에 문제의 http://jsfiddle.net/aspirinemaga/ejyRR/2/

답변

1

번호는

  1. 당신의 오프닝 클릭 이벤트는 .gui-selectbox-button하지 .gui-selectbox에 있어야하고 그것이 전파하지 않도록 false를 반환해야합니다.
  2. 항상 gui_selectbox_closeAll입니다. 모든 것을 닫을 필요가 있습니다 은 대상이되는 부모가 아닙니다. $('.gui-selectbox-dialog:visible').not($(event.target).parents('.gui-selectbox-dialog'))로 고정. 버튼과 비슷한 일을하십시오.
  3. 귀하의 gui_selectbox_listAction에 대한 설정 값이며 모두입니다. 대신 closest()을 사용해야합니다.
+0

당신이 말한 것을 시도하지만 성공할 수 없습니다 .1 및 2 번째 문제는 괜찮지 만 해결할 수없는 3 번째 문제는 괜찮습니다. ** [link] (http://jsfiddle.net/aspirinemaga/ejyRR/2/) **입니다. 세 번째 코드를 제공해 주시겠습니까? 고맙습니다. – aspirinemaga

+0

'parents()'호출을'closest()'로 대체하십시오. –

+0

코드의 다른 부분에서 문제가있는 것 같습니다. 작동하지 않기 때문입니다. – aspirinemaga