I'm trying to change the currently selected option in a select with the Chosen plugin.

documentation包括更新列表,并在 Select 某个选项时触发事件,但没有(我看得见)外部更改当前选定的值.

I have made a jsFiddle to demonstrate the code and my attempted ways of changing the selection:

$('button').click(function() {
    $('select').val(2);
    $('select').chosen().val(2);
    $('select').chosen().select(2);
});

推荐答案

docs:中的"动态更新所选内容"部分,您需要在字段上触发"已 Select :已更新"事件

$(document).ready(function() {

    $('select').chosen();

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

});

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

$('select').trigger("liszt:updated");

Jquery相关问答推荐

通过 Ajax POST 将按钮值从 HTML 发送到 Flask 时出现空数据

ASP.NET Core 6 jQuery 验证不起作用

哪个 JQuery Select 器会排除与给定 Select 器匹配的父项的项目?

jQuery单击/切换两个功能

使用 JSONP 时如何捕获 jQuery $.getJSON(或数据类型设置为jsonp的 $.ajax)错误?

jQuery: Select 属性大于值的所有元素

jQuery 的 ajax 默认超时值是多少?

Jquery .on('scroll')在滚动时不触发事件

如何同时使用 requireJS 和 jQuery?

如何使用 jQuery UI Resizable 仅水平或垂直调整大小?

如何使div全屏?

使用 jQuery DataTables 时禁用最后一列的排序

未捕获的 TypeError:data.push 不是函数

带有 jquery 的 jsonp

jquery: $(window).scrollTop() 但没有 $(window).scrollBottom()

如何在 TypeScript 中获得 jQuery 自动完成功能?

如何使用 jQuery 格式化电话号码

.append 之后的 jQuery 函数

无法更新数据属性值

检测页面是否已完成加载