Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/471.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript mainDiv.innerHTML=外部文件_Javascript_Html - Fatal编程技术网

Javascript mainDiv.innerHTML=外部文件

Javascript mainDiv.innerHTML=外部文件,javascript,html,Javascript,Html,我有一个code.js文件,其中包含以下内容: DivDialogHTML = function(){ var mainDiv = document.createElement("div"); mainDiv.id = "optin_settings_dialog"; mainDiv.className = "OptinDialog"; mainDiv.innerHTML = "<div>Text</div>"; } 我希望用mainDiv.innerH

我有一个
code.js
文件,其中包含以下内容:

DivDialogHTML = function(){
  var mainDiv = document.createElement("div");
  mainDiv.id = "optin_settings_dialog";
  mainDiv.className = "OptinDialog";
  mainDiv.innerHTML = "<div>Text</div>";
}
我希望用
mainDiv.innerHTML
打开另一个文件(
Dialog.html
),而不是使用
mainDiv.innerHTML='Text'


我该怎么做?

你是说另一个窗口吗?如果是,请查看
窗口。打开


创建新窗口后,将其内容放入并使用Ajax显示。但是为什么不使用jQuery呢

$('.selector').load(url);
在您的情况下,必须首先像这样在

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>

而不是像这样改变你现有的函数

DivDialogHTML = function(){
    var $mainDiv = jQuery("div");
    $mainDiv.attr('id', "optin_settings_dialog");
    $mainDiv.addClass("OptinDialog");
    /* $mainDiv.html("<div>Text</div>"); */
    $mainDiv.load('Dialog.html');
}
DivDialogHTML=function(){
var$mainDiv=jQuery(“div”);
$mainDiv.attr('id',“选项设置对话框”);
$mainDiv.addClass(“OptinDialog”);
/*$mainDiv.html(“文本”)*/
$mainDiv.load('Dialog.html');
}

如果您不想使用jQuery可以使用iframe

HTML

<iframe id="optin_settings_dialog"></iframe>

如果您希望在当前页面中打开另一个页面,可以使用iframe。js代码实际上会打开一个弹出窗口(不是在新窗口中,而是在页面中)。这就是代码在innerHTML中编写的原因。但我想为同样的目的打开一个外部文件。我希望我的客户端编辑Dialog.html文件,而不是code.js。我也尝试了iframe方法,但这也不是我想要的。请指定您想要的结果。我想要的最终结果是一个带有(html js)弹出窗口的页面。弹出窗口的内容应该通过Dialog.html加载。如果您使用jQuery,您可以通过
$(“”)加载
Dialog.html
的内容。加载('Dialog.html');
到另一个元素中,然后显示它。因此,实际上您的整个代码应该是:
$(“”)。加载(“Dialog.html”)
Hmm不知道如何实现这些解决方案..代码不是我自己编写的。
<iframe id="optin_settings_dialog"></iframe>
document.getElementById("optin_settings_dialog").src="Dialog.html";