javascript - 禁用 Ext.form.ComboBox 中的某些项目

标签 javascript extjs combobox

我有一个 ExtJS 4 Web 应用程序,其中有一个 Ext.form.ComboBox,我需要在其中禁用某些项目的选择。

是的,我知道我可以过滤组合框商店中的这些项目 - 但在这种情况下,我实际上确实希望用户看到这些不可选择的项目 - 我只是不希望他们能够选择它们。

有什么建议吗?

提前致谢

最佳答案

您可以使用 beforeselect 事件取消选择,并使用 itemTpl 使禁用的项目看起来已禁用,例如:

listConfig: {
    itemTpl: '<div {[values.disabled ? \'class="disabled"\' : \'\']}>{value}</div>'
},
listeners: {
    beforeselect: function(cmp, record){
        return !record.get('disabled');
    }
}

工作示例:https://fiddle.sencha.com/#fiddle/v4t

关于javascript - 禁用 Ext.form.ComboBox 中的某些项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32999373/

相关文章:

javascript - 如何在 for 循环中输出多维数组和一维数组

javascript - 单击网格特定数据索引上的事件 - Ext JS

javascript - 如何删除 ExtJS 标记字段中的所有选项

java - 我如何将字符串变量插入到java中的Sql语句中

wpf ComboBox异步绑定(bind)到项目源问题

javascript - 如何在 javascript 中将 const 关键字 (ecma 6) 与函数静态变量一起使用

javascript - 如何在同一域上的 IE8 中访问嵌套框架的 location.href ?

javascript - HTML 表格行在 IE 中不计入,在 Chrome/FF 中工作良好,使用 JS 进行分页

gwt - 成功的 GWT 开发人员需要在多大程度上成为成熟的 'web developer' ?

c# - 如何将 boolean 值绑定(bind)到组合框