Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/71.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 在div中加载html页面_Javascript_Html_Dojo - Fatal编程技术网

Javascript 在div中加载html页面

Javascript 在div中加载html页面,javascript,html,dojo,Javascript,Html,Dojo,如何在一个div中加载一个带有object标签的html页面,但我认为这不是一个好方法。它不是一个外部文件。dojo对这一点有用吗?我不完全确定您在寻找什么,但是如果您希望在另一个HTML文档中显示一个HTML文档,那么我认为唯一的方法是使用iframe。查看本教程: 也许您可以加载HTML文档,去掉HEAD和wrappingBODY元素,然后将代码插入DIV元素 编辑:啊,没有你说的iframes。那么,我提议后者^^ 使用jquery $("#mydiv").load("myexternal

如何在一个div中加载一个带有object标签的html页面,但我认为这不是一个好方法。它不是一个外部文件。dojo对这一点有用吗?

我不完全确定您在寻找什么,但是如果您希望在另一个HTML文档中显示一个HTML文档,那么我认为唯一的方法是使用
iframe
。查看本教程:

也许您可以加载HTML文档,去掉
HEAD
和wrapping
BODY
元素,然后将代码插入
DIV
元素

编辑:啊,没有你说的
iframes
。那么,我提议后者^^

使用jquery

$("#mydiv").load("myexternalfile.html");

必须将jQuery与load()方法一起使用。
这里jQuery参考关于加载方法:

如果没有其他需要框架功能的任务,没有理由使用jQuery仅将内容加载到页面(例如,仅加载到一个div):)

这应该通过AJAX基础来完成。
检查一下:

您仍然可以使用jquery通过ajax调用加载内容。获取结果并删除
及其前面的所有内容,以及
及其后面的所有内容。可以使用regex确保包含body标记的任何属性

然后剩下原始主体html,您可以使用jQuery将其添加到div中

jQuery.ajax({
    url: 'page.html', 
    success: function(data, textStatus, XMLHttpRequest) {
        data = data.replace(/.*<body.*?>/gi,'');
        data = data.replace(/</body>.*/gi,'');
        jQuery('#myDiv').html(data);
    }
});
jQuery.ajax({
url:'page.html',
成功:函数(数据、textStatus、XMLHttpRequest){
data=data.replace(/.*/gi');
data=data.replace(/.*/gi');
jQuery('#myDiv').html(数据);
}
});

我的正则表达式有点生疏,所以你可能需要调整:)

这也可以。。。使用dojo

<script type="text/javascript">
var url = dojo.moduleUrl("dijit.form", "help.html");
dojo.xhrGet({
  url: url,
  load: function(html){
       dojo.byId("mycontent").innerHTML = html;
  }
});
</script>

<div id="mycontent">

</div>

var url=dojo.moduleUrl(“dijit.form”、“help.html”);
dojo.xhrGet({
url:url,
加载:函数(html){
dojo.byId(“mycontent”).innerHTML=html;
}
});
更新:


在Dojo 1.7+中,使用require.toUrl而不是Dojo.moduleUrl(不使用iframes:)是否会过滤掉不需要的元素,例如
HTML
HEAD
BODY
?如果是这样,那么这将是一个非常优雅的解决方案。比尝试手动插入要好得多。No its从
myexternalfile.html
中提取所有html,然后将其放入div中。