Как получить значение флажка множественный выбор в jquery

У меня есть выпадающий список с флажком ( jquery includeSelectAllOption), я хочу только последнее выбранное значение вместо всех отмеченных значений флажка.

<select class="form-control" id="change_city" multiple="multiple">
  <?php foreach ($city_array as $key => $value) {
     # code...
      echo "<option value=".$value['city_id'].">".$value['city_name']."</option>";
  } ?>
</select>

<script>
    $(function() {
        $('#change_city').multiselect({
            includeSelectAllOption: true
        });
    });

</script>

2 ответа

См. ниже код, я надеюсь, может помочь вам

<label>Country:</label>
    <select class="country" multiple="multiple" size="5">
        <option>United States</option>
        <option>India</option>
        <option>United Kingdom</option>
        <option>Brazil</option>
        <option>Germany</option>
    </select>
    <button type="button">Get Values</button>



<script type="text/javascript">
$(document).ready(function() {
$("button").click(function(){
    var countries = [];
    $.each($(".country option:selected"), function(){            
        countries.push($(this).val());
    });
    //countries.join(", ")
    alert("You have selected the country - " + countries.slice(-1)[0]);
});
});
</script >

Ну, тогда просто сделайте дополнительную опцию и удалите includeSelectAllOption, Когда пользователь нажимает "выбрать все", отмените выбор всех остальных параметров и продолжайте "выбирать все".

var handler = function(){
  let val = $(this).val();
  if(val === null) return;
  val.forEach(function(value){
    if(value == "all"){
        $("#change_city option:selected").prop("selected", false);
        $('#change_city option[value="all"]').prop('selected', true); 
    }
  });
}

$("#change_city").on("change", handler);
#change_city {
  height: 150px;
  }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select class="form-control" id="change_city" multiple="multiple">
  <option value="1">City 1</option>";
  <option value="2">City 2</option>";
  <option value="3">City 3</option>";
  <option value="4">City 4</option>";
  <option value="all">Select All</option>";
</select>

Другие вопросы по тегам