Javascript没有显示在django的模板上
Posted
技术标签:
【中文标题】Javascript没有显示在django的模板上【英文标题】:Javascript not showing up on template in django 【发布时间】:2021-12-16 23:12:47 【问题描述】:我不明白为什么我的 javascript 文件没有应用于我的模板。这是我的 base.html:
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Project</title>
<link rel="stylesheet" type="text/css" href="% static 'css/styles.css' %" />
<link rel="stylesheet" type="text/css" href="% static 'css/style.css' %">
<link rel="stylesheet" type="text/css" href="% static 'assets/css/main.css' %">
</head>
<body>
<div>
% include "navbar.html" %
% block content %
% endblock content %
</div>
% include "scripts.html" %
</body>
</html>
这是我的scripts.html:
% load static %
<script src="% static 'js/main.js' %"></script>
<script src="% static 'assets/js/jquery.min.js' %"></script>
<script src="% static 'assets/js/jquery.dropotron.min.js' %"></script>
<script src="% static 'assets/js/browser.min.js' %"></script>
<script src="% static 'assets/js/breakpoints.min.js' %"></script>
<script src="% static 'assets/js/util.js' %"></script>
<script src="% static 'assets/js/main.js' %"></script>
但是,它们似乎不会影响模板。例如,如果我运行服务器,下拉菜单的格式会很奇怪。发生的另一件奇怪的事情是Main.js
一直打印在控制台上。我相信这最初是因为 main.js 文件有:
console.log("Main.js");
但是,即使我将其更改为以下内容:
console.log("Something new for the console");
我仍然在控制台上打印出Main.js
。此外,如果我将console.log("something")
放在上面引用的其他javascript 文件中,它们不会在控制台上打印出来。我不知道为什么会这样。谢谢,有任何问题欢迎提问。
【问题讨论】:
你是否在setting.py文件中添加了静态根目录 是的,我有。我有代码STATIC_ROOT = "static_root"
STATIC_ROOT=os.path.join(BASE_DIR,'assests')
你是否将此行添加到 static_root 基本上这将提供将静态文件存储在所需位置的路径
我真的推荐@bichanna 的回答。我刚遇到和你一样的问题,而且解决了。
@VishalPandey 我试过了,但我的下拉菜单不起作用。不过,console.log 现在可以正常打印了。
【参考方案1】:
清理缓存的图片和文件!
如果您使用的是 Chrome,您可以按照以下步骤操作:
-
进入设置
点击隐私安全
点击清除浏览数据
检查“缓存的图像和文件”
点击“清除数据”
【讨论】:
是的……不走运。我的下拉菜单仍然损坏。 那么,问题出在您的代码中。请提供代码。以上是关于Javascript没有显示在django的模板上的主要内容,如果未能解决你的问题,请参考以下文章
缺少变量值时 Django 模板中的 Javascript 语法错误