Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/24.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
未定义Django javascript不工作$_Javascript_Django_Materialize - Fatal编程技术网

未定义Django javascript不工作$

未定义Django javascript不工作$,javascript,django,materialize,Javascript,Django,Materialize,所以,我一直在做一个django项目(使用djagno 1.11),我看到了一个非常酷的聊天功能,有人用他们的git repo(使用django 2.0)模拟了它。我可以在自己的应用程序中按照指南重新创建整个项目,但当我将其添加到自己的应用程序中时,我会遇到麻烦。我目前的应用程序使用bootstrap,并使用javascript将项目添加到购物车和其他类似的东西,我想知道这是否会妨碍我。其他的javascript仍然有效,而新的javascript不起作用。我知道你的基本错误: 未捕获引用错误:

所以,我一直在做一个django项目(使用djagno 1.11),我看到了一个非常酷的聊天功能,有人用他们的git repo(使用django 2.0)模拟了它。我可以在自己的应用程序中按照指南重新创建整个项目,但当我将其添加到自己的应用程序中时,我会遇到麻烦。我目前的应用程序使用bootstrap,并使用javascript将项目添加到购物车和其他类似的东西,我想知道这是否会妨碍我。其他的javascript仍然有效,而新的javascript不起作用。我知道你的基本错误:

未捕获引用错误:$未定义

当我在谷歌上搜索它时,我发现这意味着某些东西在被定义之前就已经被使用了。我对python很在行,但对javascript非常熟悉,所以我不确定到底发生了什么。深入到错误中,我看到了以下几点:

    <script src="https://project.s3.amazonaws.com/static/js/chat.js"></script>
<script>
    // For receiving
    sender_id = "";
    receiver_id = "1";

    //For sending
    $(function () {      <<--  This is where the error is pointing to.
        scrolltoend();
        $('#chat-box').on('submit', function (event) {
            event.preventDefault();
            var message = $('#id_message');
            send('', '', message.val());
            message.val('');
        })
    })
</script>

</div>

//接收
发送者_id=“”;
接收方_id=“1”;
//送

$(function(){必须添加以下行

<script src="https://code.jquery.com/jquery-3.3.1.min.js"></script>

以上/之前

<script src="https://project.s3.amazonaws.com/static/js/chat.js"></script>


此行

必须添加以下行

<script src="https://code.jquery.com/jquery-3.3.1.min.js"></script>

以上/之前

<script src="https://project.s3.amazonaws.com/static/js/chat.js"></script>


这一行

我认为您没有正确声明变量

变量

sender_id = "";
receiver_id = "1";
应该这样宣布,

var sender_id = "";
var receiver_id = "1";

// if you are using ES6 then

const sender_id="";
const receiver_id = "1";
除此之外,也许您应该像Ahmet Zeybek所说的那样包括jquery


Materialize.js和Materialize.css是Materialize框架的一部分,类似于bootstrap。

我认为您没有正确声明变量

变量

sender_id = "";
receiver_id = "1";
应该这样宣布,

var sender_id = "";
var receiver_id = "1";

// if you are using ES6 then

const sender_id="";
const receiver_id = "1";
除此之外,也许您应该像Ahmet Zeybek所说的那样包括jquery


Materialize.js和Materialize.css是Materialize框架的一部分,类似于bootstrap。

如果您的问题得到解决,请不要忘记接受答案。因此,java脚本实际上是在html代码片段中,因此发送方和接收方实际上是正确的。我去做了Ahmet的建议,并修复了它。很好。但是,如果你没有正确声明变量,那么你的代码是如何工作的?如果你的问题解决了,那么请不要忘记接受答案。因此,java脚本实际上是在一段html代码中,因此发送方和接收方实际上是正确的。我去做了Ahmet的建议并修复了它。很好。但是,你的代码是如何工作的呢ng,如果您没有正确声明变量??您必须定义jquery,或者如果您确实定义了,这是您的js块顺序。浏览器呈现的顺序取决于html标记的顺序。我想您是对的。我按照Ahmet下面所说的做了,从技术上讲,错误消失了,但现在我在可能应该有jquery的每个html页面上调用jquery在一个点上。我需要看看js块顺序。我认为js块排在最后,因为这个js在html代码块中,所以它是无序的。我认为您可以做以下操作:在base.html(母版页)上放置jquery,在它的脚本标记之后放置{%block scripts%}{%endblock scripts%},在子页面上放置js函数{%block scripts%}{%endblock scripts%}.PS://这只是一个简单的解释//你必须定义jquery,或者如果你确实定义了,那就是你的js块顺序。浏览器呈现的顺序取决于html标记的顺序。我想你是对的。我按照Ahmet下面说的做了,技术上错误消失了,但现在我在每个html页面上调用jquery,我应该在一个位置调用它。我我需要看看js块顺序。我认为js块排在最后,因为这个js在一个html代码块中,所以它是无序的。我认为你可以做以下事情:在你的base.html(母版页)上放置你的jquery,在它的脚本标记之后放置{%block scripts%}{%endblock scripts%},在子页面上放置js函数{%block scripts%}{%endblock scripts%}.PS://这只是一个简单的解释//