首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >使用所选插件更改选择中的选择

使用所选插件更改选择中的选择
EN

Stack Overflow用户
提问于 2012-01-24 07:29:47
回答 3查看 147K关注 0票数 113

我正在尝试用所选的插件更改select中当前选定的选项。

documentation包括更新列表,并在选择一个选项时触发事件,但没有(据我所见)外部更改当前选定的值。

我已经创建了一个jsFiddle to demonstrate the code,并尝试了更改选择的方法:

代码语言:javascript
复制
$('button').click(function() {
    $('select').val(2);
    $('select').chosen().val(2);
    $('select').chosen().select(2);
});
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-01-24 07:40:35

docs的“动态更新所选内容”部分:您需要在字段上触发' Chosen :updated‘事件

代码语言:javascript
复制
$(document).ready(function() {

    $('select').chosen();

    $('button').click(function() {
        $('select').val(2);
        $('select').trigger("chosen:updated");
    });

});

注意: 1.0之前的版本使用了以下内容:

代码语言:javascript
复制
$('select').trigger("liszt:updated");
票数 226
EN

Stack Overflow用户

发布于 2016-02-21 21:59:28

我的答案是晚了,但我想补充上面所有答案中遗漏的一些信息。

1)如果您想在所选的select中选择单个值。

代码语言:javascript
复制
$('#select-id').val("22").trigger('chosen:updated');

2)如果您使用的是多选select,则可能需要一次性设置多个值。

代码语言:javascript
复制
$('#documents').val(["22", "25", "27"]).trigger('chosen:updated');

从以下链接收集的信息:

1) Chosen Docs

2) Chosen Github Discussion

票数 48
EN

Stack Overflow用户

发布于 2016-12-03 19:31:40

有时,您必须删除当前选项才能操作选定的选项。

下面是一个如何设置选项的示例:

代码语言:javascript
复制
<select id="mySelectId" class="chosen-select" multiple="multiple">
  <option value=""></option>
  <option value="Argentina">Argentina</option>
  <option value="Germany">Germany</option>
  <option value="Greece">Greece</option>
  <option value="Japan">Japan</option>
  <option value="Thailand">Thailand</option>
</select>

<script>
activateChosen($('body'));
selectChosenOptions($('#mySelectId'), ['Argentina', 'Germany']);

function activateChosen($container, param) {
    param = param || {};
    $container.find('.chosen-select:visible').chosen(param);
    $container.find('.chosen-select').trigger("chosen:updated");
}

function selectChosenOptions($select, values) {
    $select.val(null);                                  //delete current options
    $select.val(values);                                //add new options
    $select.trigger('chosen:updated');
}
</script>

JSFiddle (包括howto附加选项):https://jsfiddle.net/59x3m6op/1/

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8980131

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档