未捕获的ReferenceError:$未定义 - 控制台

时间:2017-04-23 11:21:48

标签: javascript jquery python django trumbowyg

我在我的控制台中收到此错误,并且它与我使用的js脚本有关(Trumbowyg WYSIWYG:http://alex-d.github.io/Trumbowyg/

这是浏览器控制台的图片,其中包含错误:

当我点击(index):166时,它会在来源中显示:

id_content是WSYIWYG编辑器的id,这是我的js文件中必需的功能,可以使其工作:

$('#id_content').trumbowyg({

});

我已经查看了其他解决方案,他们说要在每个其他js脚本之前加载jquery脚本,但我已经这样做了,并没有解决任何问题。有谁知道问题是什么?顺便说一句,我使用这个软件包将它与django集成:https://github.com/sandino/django-trumbowyg,不确定是否会改变任何内容。我只是在我的表单中加载小部件,如下所示:

class PostForm(forms.ModelForm):
    content = forms.CharField(widget=TrumbowygWidget(), required=False)

完整的HTML部分:

< div >
< textarea
cols = "40"
id = "id_content"
name = "content"
rows = "10" >
< / textarea >
< script >
$("#id_content").trumbowyg({
    lang: "en",
    semantic: true,
    resetCss: true,
    autogrow: true,
    removeformatPasted: true,
    btnsDef: {
        image: {
            dropdown: ['upload', 'insertImage', 'base64', 'noembed'],
            ico: 'insertImage'
        }
    },
    btns: [
        ['formatting'],
        'btnGrp-semantic',
        ['link'],
        ['image'],
        'btnGrp-justify',
        'btnGrp-lists',
        'video',
        ['horizontalRule'],
        ['removeformat'],
        ['fullscreen'],
        ['viewHTML']
    ],
    plugins: {
        upload: {
            serverPath: '/trumbowyg/upload_image/',
            fileFieldName: 'image',
            statusPropertyName: 'message',
            urlPropertyName: 'file'
        }
    }
});
< / script >

< / div >

编辑:请记住一切正常,但我仍然会收到此错误。这不是一个重复的问题,我已经尝试过这些解决方案,但没有一个能够解决问题。

html文件的结尾,脚本加载正常:

    ...
    <script src="//ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
    <script>window.jQuery || document.write('<script src="js/vendor/jquery-3.1.1.min.js"><\/script>')</script>
    <script src="/static/js/jquery-jvectormap-2.0.3.min.js"></script>
    <script src="http://jvectormap.com/js/jquery-jvectormap-world-mill.js"></script>
    <script type="text/javascript" src="/static/js/base.js"></script>
    <!--<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/marked/0.3.6/marked.min.js"></script>-->
    <script src="/static/js/Trumbowyg-master/dist/trumbowyg.js"></script>

</body>

1 个答案:

答案 0 :(得分:-1)

这意味着您的页面没有加载jQuery。

检查网络选项卡以查看jQuery是否存在加载问题。

确保在包含jQuery之后执行代码。