2014-09-09 4 views
1

У меня есть раскрывающийся список (выберите), к которому я применяю .select2(). Теперь я пытаюсь удалить/добавить параметр из раскрывающегося списка пометкой/снятием отметки с флажка, и он не работает. Это HTML-код:Удалить элемент из Select2 не работает

<input type="checkbox" value="1" class="lives_in_css" name="orders[lives_in_ccs]" id="orders_lives_in_ccs"> 

<select class="shipping_from form-control toSelect2 select2-offscreen" required="required" name="orders[shipping_from]" id="orders_shipping_from" tabindex="-1" title="" data-bv-field="orders[shipping_from]"> 
    <option selected="selected" value="">-- SELECCIONAR --</option> 
    <option value="MRW">MRW - COBRO EN DESTINO</option> 
    <option value="DOMESA">DOMESA - COBRO EN DESTINO</option> 
    <option value="ZOOM">GRUPO ZOOM - COBRO EN DESTINO</option> 
</select> 

И это код JQuery я сделал для этой цели:

$('.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"); 
    } 

    console.log(this.checked); 

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

Что плохого в моем коде? Here is jsFiddle to play with

+2

У вас есть опечатка. '.lives_in_ccs' ->' .lives_in_css'. –

+0

@JoshCrozier Я обновил [jsFiddle] (http://jsfiddle.net/jLto9nnv/1/), но все еще не работает, посмотрите – ReynierPM

ответ

4

Вы хотите отделить данный элемент списка, а затем снова установить его, когда флажок снят? Я не знаком с выбор2, но в следующем же, что:

$(document).ready(function() { 
    $('.toSelect2').select2(); 
    var detachedMember; 
    $('.lives_in_css').click(function() { 
     if (this.checked) { 
      detachedMember = $('option[value="MRW"]').detach(); 
     } else { 
      $('option[value=""]').after(detachedMember); 
     } 
     $(".secure_shipping").toggle(this.checked); 
    }); 
}); 

Вот fiddle

+0

Спасибо, это работает! – ReynierPM

Смежные вопросы