gpt4 book ai didi

javascript - dojo 中的 MultiSelectCombobox 问题

转载 作者:行者123 更新时间:2023-12-03 01:46:52 24 4
gpt4 key购买 nike

我需要每个选项前面带有复选框的组合框,以选择多个选项。我尝试使用“dropdown:true”来使用 CheckedMultiSelect,

当我选择项目时,它会显示组合框中的值,例如选择 2 个项目、选择 1 个项目等。

如何显示组合框文本区域中选择的值并用分隔符分隔?

是否应该为 checkMultiSelect 更改 css 或 HTML 或其他内容?

提前致谢。

最佳答案

对于第二个问题,您必须扩展 dojox.form.CheckedMultiSelect 类并重写 _updateSelectionstartup 方法:

var MyCheckedMultiSelect = declare(CheckedMultiSelect, {

startup: function() {
this.inherited(arguments);
setTimeout(lang.hitch(this, function() {
this.dropDownButton.set("label", this.label);
}));
},

_updateSelection: function() {
this.inherited(arguments);
if(this.dropDown && this.dropDownButton) {
var label = "";
array.forEach(this.options, function(option) {
if(option.selected) {
label += (label.length ? ", " : "") + option.label;
}
});

this.dropDownButton.set("label", label.length ? label : this.label);
}
}

});

使用MyCheckedMultiSelect而不是dojox.form.CheckedMultiSelect:

var checkedMultiSelect = new MyCheckedMultiSelect ({
dropDown: true,
multiple: true,
label: "Select something...",
store: dataStore
}, "placeholder");

checkedMultiSelect.startup();

我再次将其添加到 jsFiddle:http://jsfiddle.net/phusick/894af/

关于javascript - dojo 中的 MultiSelectCombobox 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10605973/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com