EXTjs 操作组合框中显示的数据

     2023-02-26     165

关键词:

【中文标题】EXTjs 操作组合框中显示的数据【英文标题】:EXTjs manipulate data displayed in a combobox 【发布时间】:2016-10-28 12:41:43 【问题描述】:

大家好,我进入了一个以前在 EXTjs 中完成的新项目,我对此很陌生,我正在努力完成任何事情。

我今天的问题是: 我有一个带有已定义 tpl 的面板,其中有几个函数可以操作 tpl 中的类(如果某个变量为真或假,则显示一个图标而不是另一个图标)。 现在我不得不将相同的逻辑翻译成一个组合框,我遇到了一些问题:

如果我使用tpl,我会获得相同的视觉结果,但我无法选择任何项目:

tpl: [
    '<tpl for=".">',
        '<div class="x-publisher [this.renderColor(values.visible)]">',
            '<div class="x-publisher-text">name</div>',
            '<div class="x-publisher-close fa [this.renderIcon(values.visible)]"></div>',
        '</div>',
    '</tpl>',
    '<div class="x-clear"></div>',
    
        disableFormats: true,
        renderColor: function(visible)
            return visible ? 'visible' : '';
        ,
        renderIcon: function(visible)
            return visible ? 'fa-eye-slash' : 'fa-eye'
        
    
],
itemSelector: 'div.x-publisher',
listeners: 
     select: 'somefunctioncalled'

,

我知道对于组合框,我必须使用 listconfig 和 itemtpl 东西,这样:

listConfig: 
        itemTpl: [
            '<div class="x-publisher visible"><div class="x-publisher-text">name</div><div class="x-publisher-close fa fa-eye"></div></div>'

                ]

                

但是这样做,我了解到我无法在 itemtpl 中定义任何函数... 所以,我的想法是在将 visible 变量传递给 itemtpl 之前对其进行操作。

商店是这样的:

store:  fields: [ name:'name' ,  name: 'id', persist: false ,  name: 'regionalId' ,  name:'visible', type: 'boolean'],
                                autoLoad: true,...

现在,是否有一种(简单的)方法可以将“可见”变量转换为字符串“可见”(如果它是真的)或者其他东西(如果它是假的)? 或者...有没有办法模拟第一个行为,我的意思是当我使用 itemTpl 时添加某种自定义函数(我了解到它们被称为成员函数)? 换图标也有问题,不过现阶段可以忽略。

你能帮帮我吗? 提前致谢。

【问题讨论】:

【参考方案1】:

我在 itemtpl 中使用了一些逻辑,似乎按预期工作:

itemTpl: [
            '<div class="x-publisher',
            '<tpl if="visible == true"> visible</tpl>',
            '"><div class="x-publisher-text">name</div><div class="x-publisher-close fa fa-eye"></div></div>'

        ]

【讨论】:

Extjs 多列组合框

】Extjs多列组合框【英文标题】:Extjsmulticolumncombobox【发布时间】:2016-02-2209:57:38【问题描述】:如何在Extjs中创建多列组合框组合框数据,如第1列(名字)-第2列(中间名)-第3列(姓氏)==组合选择上的第一个数据组合框行,... 查看详情

从组合框中删除 extjs 3.4 中的参数

】从组合框中删除extjs3.4中的参数【英文标题】:RemovefromaComboBoxaparameterinextjs3.4【发布时间】:2014-04-1607:49:06【问题描述】:我想在显示给用户之前从组合框的存储中删除一个参数,我或多或少知道该怎么做,但它不能正常工作... 查看详情

extjs 组合框在单击时显示空白列表

】extjs组合框在单击时显示空白列表【英文标题】:extjscomboboxshowsblanklistwhenclicked【发布时间】:2021-06-0818:24:46【问题描述】:我是extjs的新手,我试图从API调用返回的数据显示到组合框中,但由于某种原因,组合框没有显示“fir... 查看详情

Extjs 组合框根据属性显示商店记录

】Extjs组合框根据属性显示商店记录【英文标题】:Extjscomboboxtodisplaystorerecordsbasedonaproperty【发布时间】:2017-11-1723:07:20【问题描述】:我是Sencha的新手,我的问题如下:通过在组合框中调用商店“媒体”:xtype:\'combobox\',itemId:\'m... 查看详情

商店上的 extjs 组合框 getCount() 返回 0

】商店上的extjs组合框getCount()返回0【英文标题】:extjscomboboxgetCount()onstorereturns0【发布时间】:2021-06-1018:58:45【问题描述】:我正在尝试获取组合框中的项目数,以便我可以使用getCount()方法默认情况下使第一个值在组合框中可... 查看详情

Vba代码显示组合框中选定的数据

】Vba代码显示组合框中选定的数据【英文标题】:Vbacodetoshowselecteddatafromcombobox【发布时间】:2015-04-2910:02:51【问题描述】:我有一个Access2010表单,其中有一个列出三列的组合框:身份证名字姓氏组合框绑定到包含此数据的表。... 查看详情

如何在 Extjs 的组合框中传递树存储

】如何在Extjs的组合框中传递树存储【英文标题】:HowtopasstreestoreincomboboxinExtjs【发布时间】:2019-07-1808:35:26【问题描述】:我有一个组合框,它需要一个树存储作为它的存储。我试过下面的代码,但它不起作用。Ext.define(\'DemoGro... 查看详情

甚至从事件侦听器/ ExtJS 禁用组合框中的项目

】甚至从事件侦听器/ExtJS禁用组合框中的项目【英文标题】:Disableitemfromcomboboxevenfromeventslistener/ExtJS【发布时间】:2014-03-0417:17:30【问题描述】:假设我有这家商店:varstatsType=Ext.create(\'Ext.data.Store\',fields:[\'id\',\'grayedOutComboItem\',... 查看详情

网格内的 ExtJS 组合框

】网格内的ExtJS组合框【英文标题】:ExtJSComboBoxinsideGrid【发布时间】:2010-10-1223:37:56【问题描述】:我想在网格单元格内有一个组合框,但不是EditableGrid。我不喜欢EditableGrid的地方是您必须先单击单元格以显示组合框,然后在... 查看详情

每个循环的组合框

...遇到以下错误foreach语句无法对“object”类型的变量进行操作,因为“object” 查看详情

在 extjs 组合框中使用单值 json

】在extjs组合框中使用单值json【英文标题】:usingsinglevaluejsonintoextjscombobox【发布时间】:2012-11-1317:14:59【问题描述】:这是我得到的json响应。我检查了JSONLINT,它说有效,但如果你注意到它只给了我没有列标题的价值......列名... 查看详情

似乎无法在 Extjs 中远程填充组合框

】似乎无法在Extjs中远程填充组合框【英文标题】:CannotseemtopopulatecomboboxremotelyinExtjs【发布时间】:2013-02-0618:47:41【问题描述】:我已经尝试了所有方法来让它填充组合下拉框。键入时,说“Apple”,它似乎正在加载数据,但下... 查看详情

在 extjs 中为组合框动态隐藏/显示触发器

...hideTrigger配置属性。如果您需要在呈现组合后动态执行此操作,您可以执行以下操作:( 查看详情

如何在extjs组合框中按Enter键获取所选结果的值

】如何在extjs组合框中按Enter键获取所选结果的值【英文标题】:Howtogetthevalueoftheselectedresultonpressingenterinextjscombobox【发布时间】:2014-04-1906:17:10【问题描述】:我有一个组合框,我使用向上/向下箭头键浏览搜索结果,当我在特... 查看详情

extjs 组合框中的验证器功能 IE6 不起作用

】extjs组合框中的验证器功能IE6不起作用【英文标题】:ValidatorfunctionIE6inextjscomboboxnotworking【发布时间】:2012-04-1609:41:28【问题描述】:我正在使用此代码来验证IE6中的Combobox,这不起作用。在Firefox和Chrome中可以正常工作。请建... 查看详情

C# CaliburnMicro:如何根据在数据网格中选择的项目自动在组合框中显示值?

】C#CaliburnMicro:如何根据在数据网格中选择的项目自动在组合框中显示值?【英文标题】:C#CaliburnMicro:HowcanIautomaticallydisplayavalueinacomboboxdependingonwhichitemisselectedinadatagrid?【发布时间】:2020-12-2501:15:06【问题描述】:当用户从Datagr... 查看详情

Extjs Combobox 存储来自另一个对象的值

...513:02:46【问题描述】:我有一个对象,它具有一些我想在组合框中显示的值,我将其添加到for循环内的表单面板中。这是对象object的内容但在我的组合框中,我将数据作为[objectObject]这是我目前正在做的事情for(vari=0;i<data 查看详情

Extjs 组合框显示具有从数据存储 rest/jsp 请求中获取的值的记录

】Extjs组合框显示具有从数据存储rest/jsp请求中获取的值的记录【英文标题】:Extjscomboboxtodisplayrecordswithvaluefetchedfromdatastorerest/jsprequest【发布时间】:2021-06-2216:43:29【问题描述】:ExtJs(4.2)版本,想知道如何从组合框下拉列表中过... 查看详情