Javascript store не удаляет все элементы перед повторным добавлением - PullRequest
0 голосов
/ 07 октября 2010

Итак, у меня есть выпадающая настройка на странице ddlVehicleType, которая заполняется из магазина.Этот метод вызывается при изменении другого раскрывающегося списка, и он должен удалить все элементы из вышеупомянутого хранилища, повторно добавить их по мере необходимости, а затем заполнить раскрывающийся список новыми значениями.ИСКЛЮЧИТЬ очистку хранилища до того, как оно заново добавит значения, так что в результате, когда я переключаюсь, я получаю то, что раньше, ПЛЮС новые значения, которые должны быть там сами.это странная вещь, хотя, когда я переключаюсь назад, значения удаляются без повторного добавления чего-либо.Может кто-нибудь сказать мне, что я делаю не так?Метод ниже:

function filterVehicleTypes() {

                var masterStore = Global.getComponent("vehicleTypeStore").getStore();
                var Source = Global.getComponent("ddlValuationSource").getRawValue();
                var isIncuded = '';
                var IncludeFlags = '';

                if (Source == undefined || Source == null)
                    Source = '';

                Global.getComponent("ddlVehicleType").getStore().removeAll(false);


                masterStore.each(function(rec) {

                    switch (Source.toUpperCase()) {
                            case 'KBB':
                                if (rec.get('Code') == 'KBB') {
                                    Global.getComponent("ddlVehicleType").store.add(rec);
                                }
                            case 'NADA':
                                IncludeFlags = rec.get('MiscCode1');
                                if (IncludeFlags != null) {
                                 isIncuded = IncludeFlags.substr(1, 1);
                                    if (isIncuded == 'Y' && rec.get('Code') == 'NADA') {
                                        Global.getComponent("ddlVehicleType").store.add(rec);
                                    }
                                }
                                break;
                            default:
                                IncludeFlags = rec.get('MiscCode1');
                                if (IncludeFlags != null) {
                                    isIncuded = IncludeFlags.substr(0, 1);
                                    if (isIncuded == 'Y') {
                                     Global.getComponent("ddlVehicleType").store.add(rec);
                                    }
                                }
                                break;
                        }
                });
            }

1 Ответ

0 голосов
/ 07 октября 2010
нет

Нет

break;

в первом случае. Doh!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...