Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/361.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.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 load()将html文件包含到另一个不工作的html文件中_Javascript_Jquery_Html_Django - Fatal编程技术网

Javascript load()将html文件包含到另一个不工作的html文件中

Javascript load()将html文件包含到另一个不工作的html文件中,javascript,jquery,html,django,Javascript,Jquery,Html,Django,我的目标是:将一个html文件(我网站的标题)包含到许多其他html文件(我网站的每个页面)中 我不想复制和粘贴我的头html到我的每个网站页面。当我想更改我的标题html时,我不想查看每个网页并更改所有标题 我当前(不工作)的解决方案: 使用jquery的.load()函数将我的头html加载到div中。我的代码: header.html: <h1>I am a header</h1> 我是头 index.html: <html> <hea

我的目标是:将一个html文件(我网站的标题)包含到许多其他html文件(我网站的每个页面)中

我不想复制和粘贴我的头html到我的每个网站页面。当我想更改我的标题html时,我不想查看每个网页并更改所有标题

我当前(不工作)的解决方案: 使用jquery的.load()函数将我的头html加载到div中。我的代码:

header.html:

<h1>I am a header</h1>
我是头
index.html:

<html>
    <head>
        <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
        <script> 
            $(function(){
                $("#header").load("header.html"); 
            });
        </script> 
    </head>
    <body>
        <div id="header"></div>
    </body>
</html>

$(函数(){
$(“#header”).load(“header.html”);
});

这非常类似于这样的问题,但我的代码仍然不起作用。这可能与django的模板引擎呈现的所有内容有关吗?header.html与index.html位于同一目录中,您的代码应该可以正常工作,但如果它在Chrome中,则可能会在文件访问方面出现问题

您可以尝试使用firefox,或者坚持使用Chrome,但使用参数args打开它,允许从文件访问文件


如果这仍然不起作用,请附加在控制台输出上,以便更容易诊断

我扩展丹尼尔已经说过的话

首先阅读

假设您有
base.html
,其中存储了应该出现在所有页面中的标题部分,您有
detail.html
,需要处理其他部分

所以,
base.html

<!doctype html>
<html lang="en">
    <head>
       stuff that appears in all pages
    </head>
    <body>
       {% block body %}{% endblock %}
    </body>
</html>
就是这样,你的detail.html将包含base.html的所有内容,以及你写入
body
块的内容


希望,这有助于在浏览器开发工具中检查实际请求本身。好奇为什么不只是做一个服务器端包含??为什么要用jQuery做这个?这有各种各样的问题——负载、JS可用性、可访问性。但Django的模板系统是通过块和继承显式实现的。那就是办法。是的。丹尼尔:除了jquery之外,你能推荐另一种方法来实现我的目标吗?通过谷歌搜索“将html包含到另一个html文件中”,我得到的答案主要是jquery,你需要阅读。正如我所说,这是任何模板系统的明确目标;在Django的版本中,将头放在一个基本HTML文件中,所有模板都从中扩展。
{% extends 'base.html' %}
{% block body %}
   stuff that shows up only in detail.html
{% endblock %}