2017-12-15 4 views
0

저는 bootstrap select2을 사용하고 있습니다. 다른 옵션을 선택할 때 null이라는 기본 선택 값이 지워지도록이 선택을 처리해야합니다.디폴트 선택 값을 지우십시오.`Bootstrap Select2`

HTML 코드

<select class="selectpicker" multiple="" name="maritalstatus[]" id="marital-status"> 
    <option selected="selected" value="">Does Not Matter</option> 
    <option value="unmarried">Unmarried</option> 
    <option value="divorce">Divorced</option> 
    <option value="widow">Widowed</option> 
    <option value="awaited-divorce">Awaiting Divorce</option> 
</select> 

JSCode

$("select").select2({ 
    theme: "bootstrap", 
    containerCssClass: ':all:', 
    dropdownCssClass: 'no-search', 
    allowClear: true, 
}); 

UI

enter image description here

이제 UI에 따라 Does Not Matter 이외의 옵션을 선택하면 Does Not Matter이 항상 지워집니다.

규칙 :

  • 다른 옵션 중 하나와 함께 존재할 수 없습니다 옵션을 중요하지 않습니다.

답변

0

난 .. 다음 용액으로 해결하도록 관리

removeDefaultSelect2Value: function() { 
    const selectIDs = "#id1, #id2"; 
    $(selectIDs).on("select2:select", function(e) { 
    var $el = $(this); 
    var data = e.params.data; 
    //console.log(data.element); 
    if (data.id === "") { 
     $(this).select2("val", 0, true); 
    } else { 
     setTimeout(function() { 
     $el 
      .next("span") 
      .find(
      'li[title="Does Not Matter"] .select2-selection__choice__remove' 
     ) 
      .click(); 
     }, 10); 
    } 
});