CombJox ExtJS иногда прячется за серым окном - PullRequest
1 голос
/ 27 сентября 2010

Таким образом, приведенный ниже код вызывается, когда пользователь выбирает Сохранить во всплывающем модальном окне ExtJS. Это окно содержит только поле со списком. Теперь, иногда, когда пользователь сохраняет это, а затем снова открывает его, поле со списком появляется за окном, все серым, не может добраться до. В других случаях все будет хорошо и будет работать, и никакой разницы в событиях, происходящих в любое время, не будет, просто полная несогласованность.

Кто-нибудь знает, что это может быть?

var changeProductOK = function() {
            var win = getChangeProductWindow();
            if (win.subProductId.getValue() == '') {
                Global.alert('Choose a product');
                return;
            }
            win.hide();
            PropertiesWin.hide();

            Global.confirm('You sure?', 'Confirm', function(result) {
                if (result) {
                    Global.mask('Changing the product', workspacePanel.getEl());
                    WorkspaceController.ChangeProduct(applicationId, win.subProductId.getValue(), function(response) {
                        Global.unmask(workspacePanel.getEl());

                        if (!response) {
                            showWorkflowMessages([{ Type: 0, Text: 'A timeout occurred while changing the product.  Please try again.'}]);
                            return;
                        }
                        if (response.Data.Result == false) {
                            showWorkflowMessages(response.Data.Messages);
                        } else {
                            Global.mask('Reloading the application');
                            reloadWorkspace();
                        }
                    });
                }
                win.subProductId.setValue('');
            });
        }

Ответы [ 2 ]

1 голос
/ 30 июля 2014

Проблема связана с некоторой ошибкой, связанной с z-индексами.Я просто исправил это, убедившись, что z-index был немного выше, чем окно, добавив:

<style>
    .x-combo-list {z-index: 10000 !important} /* A hack to fix superboxselect dropdowns showing up behind window */
</style>

Не красиво, но работает.

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

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

Я разместил

win.close();

сразу после

win.subProductId.setValue('');

Таким образом, он уничтожает модальное значение каждый раз, когда завершается успешное сохранение, и поэтому он всегда будет загружаться как начальное окно (которое работало каждый раз)

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