Chosen: A redefinição múltipla escolhida não funciona

Criado em 4 dez. 2013  ·  5Comentários  ·  Fonte: harvesthq/chosen

Usando a linha $(".chosen-select").val('').trigger("chosen:updated"); em um script jquery não redefine o campo de formulário escolhido. Funciona bem para o único menu suspenso.

Comentários muito úteis

Multi-seleções esperam uma matriz como valor, portanto, para redefini-la usando jQuery, você pode usar o seguinte:

$('.chosen-select').val([]).trigger('chosen:updated')

Veja aqui um exemplo ao vivo: https://jsfiddle.net/koenpunt/L1sd259w/

Todos 5 comentários

Tente o seguinte:

$('.chosen-select option:selected').removeAttr('selected');
$('.chosen-select').trigger('chosen:updated');

Tentei isso, mas o html que é gerado para o múltiplo é diferente do único select.
É isso aqui.

<div class="chosen-container chosen-container-multi" style="width: 100%;" title="" id="users_chosen">
  <ul class="chosen-choices">
    <li class="search-choice">
      <span>Manus </span>
      <a class="search-choice-close" data-option-array-index="1"></a>
    </li>
    <li class="search-field">
      <input type="text" style="width: 25px;" autocomplete="off" class="" value="Choose users...">
    </li>
  </ul>
  <div class="chosen-drop">
    <ul class="chosen-results">
      <li data-option-array-index="1" style="" class="result-selected">Manus </li>
      <li data-option-array-index="2" style="" class="active-result">Owen </li>
      <li data-option-array-index="3" style="" class="active-result">Sean </li>
      <li data-option-array-index="4" style="" class="active-result">Sinead </li>
    </ul>
  </div>
</div>

Muito obrigado por isso, eu estava procurando por essa opção e havia postado no site StackOverflow, mas não obtive nenhuma resposta. Parece que este fórum está mais ativo :+1:

Eu tentei redefinir todo o formulário com algo assim:

        var form = $('form');
    form.get(0).reset();
    form.find('.filterSelect').trigger('chosen:updated');

Mas eu tenho o problema semelhante ... para os únicos drop downs tudo funciona bem. Mas as seleções múltiplas não têm mais um espaço reservado.

Multi-seleções esperam uma matriz como valor, portanto, para redefini-la usando jQuery, você pode usar o seguinte:

$('.chosen-select').val([]).trigger('chosen:updated')

Veja aqui um exemplo ao vivo: https://jsfiddle.net/koenpunt/L1sd259w/

Esta página foi útil?
0 / 5 - 0 avaliações