Как передать аргументы в iframe (IE11 + Edge) - PullRequest
0 голосов
/ 18 июня 2020

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

Проблема, с которой я столкнулся, состоит в том, что jsp должен знать информацию об окне, которое его вызывает. Раньше это делалось с помощью showModalDialog, где вы могли передать аргумент «окно». Здесь я не уверен, как я могу передать такую ​​информацию, все, что я видел в Интернете, - это люди, которым нужно передавать параметры URL, что на самом деле не относится к моему случаю.

У меня есть:

jQuery( "#addentry" ).on( "click", function() {
               jQuery("#thedialog").attr('src', 'myfile.jsp');
               /* myDialog.load('myfile.jsp').dialog(); */
               return false;
           });

В myfile.jsp ожидается извлечение информации из «окна», о котором я мало что знаю; Я полагаю, что это встроенный объект, который дает информацию о текущем окне? За исключением того, что сейчас без showModalDialog, окно не передается, и вся информация, которую он ожидает получить, равна нулю. Как я могу обойти это?

Изменить: я попробовал что-то вроде

var frame = document.getElementById('thedialog');
frame.contentWindow.window = window; // This is probably bad
frame.contentWindow.form = form; // This is bad too probably

jsp, загруженный в iframe, должен получить доступ к окну и форме, но когда он пытается do window.dialogArguments.object_of_interest, object_of_interest получает консольную ошибку как null.

Edit 2 : я даже не уверен, что iframe - это способ go здесь, я пытался загрузить https://google.com в iframe, и хотя я мог видеть на вкладке сети в инструментах разработчика моего браузера, что запрос GET отправляется с кодом ответа 200, я не получаю всплывающего окна.

Редактировать 3 : Я пробовал еще несколько вещей, например, использовал <jsp:include page=... /> для включения jsp в <div>, которое составляет всплывающее окно, но когда я попытался загрузите родительскую страницу, она была полностью пустой. Как будто эта единственная строка препятствовала отображению страницы. Я попытался выполнить проверку работоспособности и загрузить jsp в новое окно с помощью window.open ("myfile. jsp"), но когда он открылся, мне было предложено войти в систему (это консоль администратора) и не было переведите меня на правильную страницу.

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