{% include "abc.html" %}
在 Django 中,我将 html 放入其中。
现在,我的 JavaScript 无法工作。
$(function(){
alert('hi');
$(".div_inside_abc").css("background","#000");
});
我什至尝试将此 javascript 放入 abc.html 中(位于顶部)。还是不行。
当我这样做时:
$(".div_inside_abc").each(function(e){
document.write($(this).attr("data-rel"));
});
我明白了:
{{p.grid_image_ur l}}{{p.grid_image_ur l}}{{p.grid_image_ur l}}{{p.grid_image_ur l}}{{p.grid_image_ur l}}{{p.grid_image_ur l}}
这不正常!就好像当我“包含”某些东西时 Django 的模板没有呈现。
最佳答案
如果您将 JavaScript 代码放入 HTML 中,它将不会执行(或者不会成为有效的 HTML)。如果您打算这样做(我不建议)或将其作为 DOM1 属性,则必须将其包装在 SCRIPT 标记中。
如果您希望 jQuery 在加载时运行此函数,我建议您在 jQuery 之后加载的外部引用的 JavaScript 文件中执行此操作,
$(document).ready(function() {
alert('hi');
$(".div_inside_abc").css("background","#000");
});
或者将其内联添加为,
<script language="javascript">
$(document).ready(function() {
alert('hi');
$(".div_inside_abc").css("background","#000");
});
</script>
在 jQuery 包含之后。
如果您希望任意评估它,我建议您以这种方式直接调用该函数(如果您需要范围)
(function(){
alert('hi');
$(".div_inside_abc").css("background","#000");
})();
关于javascript - 当我将 HTML 放入 "include"时,为什么我的 javascript 不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4405217/