Как определить расширенные свойства для поля со списком для вставки и удаления элементов в его магазине? - PullRequest
2 голосов
/ 17 ноября 2011

Ext JS ComboBox свойства

    typeAhead: true
    editable: true
    forceSelection: false
    lazyRender: true
    mode: 'local'
    emptyText: 'Please Select'
    triggerAction:’all’

Расширенные свойства

    insertedItems:[]

это свойство позволяет нам вставлять любые элементыв магазин с конкретными индексами.Например: вставленные элементы: [{имя: 'Элемент1, значение: '15', индекс: 3 '}].В onStoreLoad этот массив элементов будет вставлен в хранилище с указанными индексами.

    removedItems:[]

это свойство позволяет нам удалять любые ненужные элементы из хранилища с использованием определенных индексов.В onStoreLoad этот массив элементов будет удален из магазина с использованием указанных индексов.

Я пробовал это

insertedItems: [{ Name: 'Manage This List', Value: 'edit', Index: '0', IsSeparator: '0'}]
removedItems: []
onStoreLoad: function () {
    if (this.insertedItems) {
        var insertedItems = new Array();
        insertedItems = this.insertedItems;
        for (var i = 0; i < insertedItems.length; i++) {
            if (insertedItems['Index']) {
                var index = insertedItems['Index'].getValue();
            }
            this.store.insert(index, insertedItems);
        }
    }
    if (this.removedItems) {
        var removedItems = new Array();
        removedItems = this.removedItems;
        for (var i = 0; i < removedItems.length; i++) {
            if (removedItems['Index']) {
                var index = removedItems['Index'];
            }
            this.store.removeAt(index);
        }
    }
}

Пожалуйста, помогите мне свставленные элементы [] и удаленные элементы [].Спасибо.

1 Ответ

0 голосов
/ 17 ноября 2011

Это должно работать в соответствии с тем, что вы хотите (я думаю, не могу правильно следовать тому, что вы говорите)

insertedItems: [{ Name: 'Manage This List', Value: 'edit', Index: '0', IsSeparator: '0'}]
removedItems: []
onStoreLoad: function () {
    if (this.insertedItems) {
        var insertedItems = [];
        insertedItems = this.insertedItems;
        for (var i = 0; i < insertedItems.length; i++) {
            if (insertedItems[i]) {
                var record = insertedItems[i];
            }
            this.store.insert(this.store.length, record);
        }
    }
    if (this.removedItems) {
        var removedItems = [];
        removedItems = this.removedItems;
        for (var i = 0; i < removedItems.length; i++) {
            if (removedItems[i]) {
                var record = removedItems[i];
            }
            this.store.remove(record);
        }
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...