select2输入框不刷新默认值

Posted

技术标签:

【中文标题】select2输入框不刷新默认值【英文标题】:Select2 input box does not refresh default value 【发布时间】:2013-10-14 17:06:40 【问题描述】:

我有一个附加到 SELECT 元素的 Select2 jquery 插件。 Select2 具有 allowClear 属性。

当我在列表中选择一个值时,对应的输入框没有设置为反映选择的值。所选值由 JQGRID 编辑表单设置。

这就是我创建选择列的方式:

        name: "responsable", width: 200, editable: true, edittype: "select", formatter: 'select', editrules: required: false, editoptions: style: 'width: 310px', value: ' usuarios ', dataInit: function(el) 
                    $(el).select2(
                            
                                placeholder: "-[Seleccione responsable]-",
                                width: 310,
                                allowClear: true
                            );
                , stype: 'select', searchoptions: sopt: ['eq'], value: ' usuarios ',

当我第一次打开编辑对话框时,输入框设置了网格中的值,但是当我选择另一个元素时,旧值显示在输入文本中,但是,当我展开选择列表时,正确的值显示为已选中。

我该如何解决这个问题?

谢谢 詹姆

【问题讨论】:

你有解决这个问题的办法吗? 【参考方案1】:

Select2 绑定到底层更改事件。如果您以编程方式更改值(例如通过$.val),则不会触发此事件,因此您必须手动触发它:

$(el).val('some new value').trigger('change')

这将导致 select2 接受更改并正确更新。

更多信息可以在 Select2 的examples 页面的programmatic access 下找到。

【讨论】:

以上是关于select2输入框不刷新默认值的主要内容,如果未能解决你的问题,请参考以下文章

如何在初始化了select2的输入框上设置默认值?

如何使用 asp.net mvc 中的标记在 Select2 输入中设置默认值

安卓手机点输入输入框不出来键盘

EditText控件设置只读,动态控制EditText状态 输入框不自动打开输入法

让表单的输入框不显示历史输入记录

页面刷新后表单里面input的元素不清空,怎么办?