Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何防止在ExtJs Sencha标记字段上同时选择多个标记?_Javascript_Extjs_Extjs6 Classic - Fatal编程技术网

Javascript 如何防止在ExtJs Sencha标记字段上同时选择多个标记?

Javascript 如何防止在ExtJs Sencha标记字段上同时选择多个标记?,javascript,extjs,extjs6-classic,Javascript,Extjs,Extjs6 Classic,如何防止在ExtJs Sencha标记字段上同时选择多个标记?我还希望只选择一个元素,一旦选择了元素,就保持选中状态。设置multiSelect:false时,如果向控件插入新元素,则会收到错误消息 这是对这个例子的一种篡改。如果按shift键,您可以选择多个。我只想选一个 Ext.application({ name : 'Fiddle', launch : function() { var shows = Ext.create('Ext.data.S

如何防止在ExtJs Sencha标记字段上同时选择多个标记?我还希望只选择一个元素,一旦选择了元素,就保持选中状态。设置multiSelect:false时,如果向控件插入新元素,则会收到错误消息

这是对这个例子的一种篡改。如果按shift键,您可以选择多个。我只想选一个

    Ext.application({
    name : 'Fiddle',

    launch : function() {
        var shows = Ext.create('Ext.data.Store', {
            fields: ['id','show'],
            data: [
                {id: 1, show: 'Tag 1'},
                {id: 2, show: 'Tag 2'},
                {id: 3, show: 'Tag 3'}
            ]
        });

        Ext.create('Ext.window.Window', {
            //renderTo: Ext.getBody(),
            title: 'Tagfield Test',
            height: 200,
            width: 500,
            layout: 'fit',
            items: [{
                xtype: 'tagfield',
                fieldLabel: 'Pick a tag',
                store: shows,
                displayField: 'show',
                valueField: 'id',
                queryMode: 'local',
                filterPickList: true,
                minWidth: 300,
                maxWidth: 200,
                maxHeight: 10
            }]
        }).show();
    }
});


在呈现标记字段后更改选择模型模式:

Ext.application({
    name : 'Fiddle',

    launch : function() {
        var shows = Ext.create('Ext.data.Store', {
            fields: ['id','show'],
            data: [
                {id: 1, show: 'Tag 1'},
                {id: 2, show: 'Tag 2'},
                {id: 3, show: 'Tag 3'}
            ]
        });

        Ext.create('Ext.window.Window', {
            //renderTo: Ext.getBody(),
            title: 'Tagfield Test',
            height: 200,
            width: 500,
            layout: 'fit',
            items: [{
                xtype: 'tagfield',
                fieldLabel: 'Pick a tag',
                store: shows,
                displayField: 'show',
                valueField: 'id',
                queryMode: 'local',
                filterPickList: true,
                minWidth: 300,
                maxWidth: 200,
                maxHeight: 10,
                // Change selection model mode after render.
                listeners: {
                    afterrender: function(tagField) {
                        tagField.selectionModel.setSelectionMode('SINGLE');
                    }
                }
            }]
        }).show();
    }
});

在标记字段中添加配置

多重选择:错误