невыбираемое текстовое поле в IE11 с диалоговым окном jquery

У меня есть диалоговое окно jquery, которое открывает диалоговое окно из кода ниже, а «закрытие» выполняется с помощью ClosePopup.

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

проблема связана с IE 11 с этой конкретной версией браузера.

введите здесь описание изображения

this.OpenPopup = function (popupId, title, url, height, width) {        
        var $dialog = $('<div id=' + popupId + ' style="z-index:10000;"><iframe id="iframe' + popupId + '" src=' + url + ' style="border: none;overflow-x:hidden; overflow-y:hidden;display: block;" height="100%" width="100%" marginheight="0" marginwidth="0" frameBorder="0" scrolling="no" horizontalscrolling="no" verticalscrolling="no"></iframe></div>')
            .dialog({
                autoOpen: false,
                modal: false,
                height: height,
                width: width,
                closeOnEscape: false,
                draggable: true,
                resizable: false,
                title: title,
                create: function (event, ui) {
                    $(event.target).parent().css('position', 'fixed');
                    $("#" + popupId).css('overflow', 'hidden');
                }
            });                
        $("#" + popupId).dialog("option", "position", { my: "center", at: "center", of: window });
        $("#" + popupId).dialog("open");       

        $('#iframe' + popupId).load(function () {
            var doc = document.getElementById('iframe' + popupId).contentDocument || document.getElementById('iframe' + popupId).contentWindow.document;
            $("#" + popupId).dialog("option", "height", doc.body.offsetHeight);
        });        
    };
    this.ClosePopup = function (popupId) {
        $('#' + popupId).remove();        
    };


person Bhaarat    schedule 10.07.2015    source источник
comment
Вы пытались просто закрыть диалоговое окно, а не удалить его?   -  person Dean.DePue    schedule 10.07.2015
comment
если мы используем close, это не уничтожит Div. поэтому он создает несколько всплывающих элементов div в html как скрытые. поэтому он создает утечки памяти. вот почему мы уничтожаем его. К вашему сведению, если мы используем close, проблема будет решена.   -  person Bhaarat    schedule 10.07.2015
comment
Можете ли вы предоставить демонстрацию этого, которая на самом деле показывает, что это происходит - код всплывающего окна содержит iframe, который, я думаю, находится там, где находятся поля текстового поля, но вы не показали нам код для этого, поэтому я не могу действительно знаю, что происходит.   -  person Simba    schedule 10.07.2015
comment
Кроме того, чтобы продолжить то, что сказал @Dean.DePue, пытались ли вы использовать close, а затем повторно заполнять тот же диалог, а не remove, и каждый раз перестраивать его с нуля? Это не должно быть утечкой памяти, если вы правильно с этим справитесь.   -  person Simba    schedule 10.07.2015
comment
@Simba Что касается демонстрации. Вы можете использовать любой URL-адрес, где вы найдете любое текстовое поле. нет ничего общего с конкретным URL. и за использование close я понял вашу точку зрения.. Я постараюсь сообщить вам.   -  person Bhaarat    schedule 10.07.2015
comment
Я вижу, что ваше диалоговое окно содержит iframe. Это известная ошибка в Internet Explorer — см. stackoverflow.com/questions/19150008/   -  person Waggers    schedule 21.07.2017