2014-09-04 1 views
0

나는 그것이 내가이 요소 전환이 코드를 사용하는 일반적인 SELECT 요소의 경우, 이전 .select2()을 적용 드롭 다운 요소가 있습니다표시/숨기기 옵션이

$('#orders_nat_lives_in_ccs').click(function() { 
    $(".shipping_from option[value='MRW']").toggle(!this.checked); 
    $(".shipping_from option:eq(" + ((this.checked) ? 1 : 0) + ")").prop('selected', true); 

    $(".secure_shipping").toggle(this.checked); 
}); 

을하지만, 이것은 Select2에서 작동하지 않습니다.이 라이브러리를 사용하여 이것을 수행하는 올바른 방법은 무엇입니까?

여기서 제가 말하고자하는 것은 Fiddle입니다. 첫 번째 드롭 다운은 .select2()이고 코드는 작동하지 않으며, 두 번째 것은 동일하지만 Select2 및 동일한 코드가 작동하지 않습니다.

+0

jsfiddle를 제공 ​​할 수 있습니까? 나는 실제로 일어나야 할 일을 따르고 있지 않다. –

+0

@JayRizzi 예를 들어 나의 대답을 업데이트했다. – ReynierPM

+0

나는 여러 가지 방법으로 같은 것을 성취하려고 노력했지만 복잡해지고있다. – Sunand

답변

1

선택 항목이 숨겨져 있어도 옵션을 사용하고 있기 때문에 제거하고 옵션을 추가하는 것이 더 쉽습니다. 아래 코드를 찾으십시오.

$('#orders_nat_lives_in_ccs').click(function() { 
    if(this.checked){ 
     $(".shipping_from option[value='MRW']").remove() 
     $(".shipping_from").select2("val", "DOMESA"); 
    }else{ 
     $(".shipping_from").prepend('<option value="MRW">MRW - COBRO EN DESTINO</option>'); 
     $(".shipping_from").select2("val", "MRW"); 

    } 
// $(".shipping_from option[value='MRW']").toggle(!this.checked); 
// $(".shipping_from option:eq(" + ((this.checked) ? 1 : 0) + ")").prop('selected', true); 
}); 
+0

고마워, 그것은 작동한다 나는 [피들] (http://jsfiddle.net/61v9edea/2/)을 다른 사람들을위한 해결책으로 업데이트했다. – ReynierPM

+0

당신은 오신 것을 환영합니다! – Sunand