2017-12-26 18 views
0

는 내가 jQuery 플러그인 select2 (V4)를 사용하고 있는데 나는 옵션이 선택되어있는 테두리 색상 변경하려면 -이 클래스에있을 것입니다 :Select2에서 옵션이 선택되었을 때를 알 수있는 방법이 있습니까?

.select2-selection--single 

그러나 클래스 변경 등보고를 알 옵션을 선택했을 때 CSS 안에 이것을 알기위한 확실한 방법이 없다면 나타납니다. 내가 실제로 알아 차 렸던 유일한 점은 클래스를 기본 select2 컨테이너에 추가 한 것이 었습니다. 그러나 이것을 사용하는 것이 현명하지는 않을 것이라고 생각합니다.

쉬운 방법이 있나요? 아니면 직접이 기능을 추가해야합니까?

+0

플러그인 API를 사용하면 템플릿 드롭 다운 및 선택 (https://select2.org/dropdown 참조)를 모두 확인 했 – charlietfl

+0

에 후크 모든 종류의 이벤트가 있습니다? – beaver

+0

그러나, 당신을 도울 수 있다면 내 피들을 확인하십시오 : https://jsfiddle.net/beaver71/0573357j/ – beaver

답변

1

템플릿 화와 Select2 CSS 사용자 정의를 모두 사용하여 목표를 달성 할 수 있습니다.

li[aria-selected="true"] { 
    border: 1px solid red !important; 
} 

사용 Dropdown template이 드롭 다운 목록에서 항목을 포맷하고 Selection template 선택 요소를 포맷 :

예를 들어, 드롭 다운 메뉴에서 선택한 요소에 사용자 지정 스타일을 적용합니다. 여기

코드 예제는 이러한 기술을 사용하고 있습니다 : https://jsfiddle.net/beaver71/0573357j/

+0

기술에 감사드립니다. 이전에 select2로 템플릿을 사용했지만'select2 : select' 이벤트를 듣고 테두리 색을 변경했습니다. – Brett

+0

'templateResult' 함수에서 컨테이너의 스타일을 변경할 수도 있습니다 :'function formatStateDropdown (state, container)'. Fiddle이 업데이트되었습니다. – beaver