我需要在每个选项前面带有复选框的组合框,以选择多个选项.我尝试使用“dropdown:true”使用CheckedMultiSelect,
当我选择项目时,它显示组合框中的值,如选择的2个项目,选择的1个项目等.
如何显示在分隔符分隔的组合框的文本区域中选择的值?
是否必须为checkedMultiSelect更改css或HTML或其他内容?
提前致谢.
解决方法:
至于你的第二个问题,你必须扩展dojox.form.CheckedMultiSelect类并覆盖_updateSelection和启动方法:
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/
原文地址:https://codeday.me/bug/20191007/1865229.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。