ОК, после некоторых экспериментов я получил решение, которое очень просто. На первом этапе диалог должен быть подготовлен и готов к содержанию. После этого содержимое должно быть вставлено внутрь. Как этот рабочий код:
var $dialog = jQuery('<div />').dialog({
autoOpen: false,
modal: true,
closeText: "",
close: function (event, ui) {
if ($dialog) {
$dialog.dialog("close");
$dialog.remove();
}
}
});
var helpIframe = document.createElement('iframe');
helpIframe.setAttribute('id', 'help_iframe');
$dialog.append(helpIframe);
helpIframe.contentDocument.getElementsByTagName("html")[0].setAttribute('style', 'display:block;');
var helpBase = document.createElement("base");
helpBase.setAttribute("href", "https://www.outsidedomain.com");
helpIframe.contentDocument.getElementsByTagName("head")[0].appendChild(helpBase);
helpIframe.contentDocument.body.innerHTML = text;
$dialog.dialog('open');