mainDiv.innerHTML =外部文件

时间:2012-12-18 14:35:40

标签: javascript html

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

DivDialogHTML = function(){
  var mainDiv = document.createElement("div");
  mainDiv.id = "optin_settings_dialog";
  mainDiv.className = "OptinDialog";
  mainDiv.innerHTML = "<div>Text</div>";
}

加载弹出窗口的代码(不知道它是否是所有代码,但是为了得到这个想法):

DivDialogOverlayHTML = function(){
  var mainDiv = document.createElement("div");
  mainDiv.id = "optin_settings_overlay_dialog";
  mainDiv.className = "OptinDialog";
  return mainDiv;
}


renderOptinWindow = function(){
  var pageHead = document.getElementsByTagName("head")[0];
  var pageBody = document.getElementsByTagName("body")[0];
  if( pageHead && pageBody ){
    pageBody.appendChild( this.getDivDialogHTML() );
  }
}

而不是使用mainDiv.innerHTML = '<div>Text</div>'我希望mainDiv.innerHTML打开另一个文件(Dialog.html)。
我该怎么做?

3 个答案:

答案 0 :(得分:2)

使用Ajax。但为什么不使用jQuery?

$('.selector').load(url);

在你的情况下,你必须首先在你的

中插入jQuery
<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');
}

答案 1 :(得分:0)

你的意思是另一个窗口?如果是这样,请查看window.open

window.open

创建新窗口后,将其内容显示并显示

答案 2 :(得分:0)

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

<强> HTML

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

<强>的Javascript

document.getElementById("optin_settings_dialog").src="Dialog.html";