如何在Extjs 6中的tagfield中获取已保存的标签?

时间:2017-04-24 09:18:40

标签: extjs extjs5 extjs6 extjs6-classic

请,我正在使用tagfield来选择我想要的标签。但是在加载保存的表单后,我不知道如何在标记字段上获取所选标记。这是我的代码,谢谢你:

xtype: 'tagfield', 
fieldLabel: 'Event hour (tagfield)', 
store:  Ext.create('Ext.data.Store', { 
            fields: ['id','name'], 
            data: [{id: 0, name: 'Battlestar Galactica'}, 
                   {id: 1, name: 'Doctor Who'}, 
                   {id: 2, name: 'Farscape'}, 
                   {id: 3, name: 'Firefly'}, 
                   {id: 4, name: 'Star Trek'}, 
                   {id: 5, name: 'Star Wars: Christmas Special'}
            ] 
        }),
displayField: 'name', 
valueField: 'id',
value: [],
queryMode: 'local', 
filterPickList: true,
delimiter:",",
multiSelect: true

1 个答案:

答案 0 :(得分:1)

所选项目作为数组存储在标记字段的value属性中。 您需要读取该属性并将选定的值存储在某处。 为了恢复标记字段的初始状态看起来像你离开它,只需将以前存储的数组设置为值配置选项。

看到我刚刚放在一起的小提琴: https://fiddle.sencha.com/#fiddle/1uhh

这应该概述如何阅读(并存储在某处)选择以及如何预先选择从之前保存的地方加载的内容。

为简单起见,我只是在浏览器的LocalStorage中存储了以逗号分隔的值。这样你就可以重新加载小提琴,看它是否有效。 要查看默认值已预先选择,请在标记字段中选择不同的内容,然后重新加载或再次运行小提琴。您应该看到它没有保存新选择并恢复为默认值。 然后执行相同操作,但点击标记字段下方的选择按钮。 如果您现在重新加载,则选择的状态是"保留"并从LocalStorage预选。

相关问题