Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/88.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_Jquery_Django_Upload - Fatal编程技术网

引用django javascript文件中的其他静态文件

引用django javascript文件中的其他静态文件,javascript,jquery,django,upload,Javascript,Jquery,Django,Upload,我需要将文件加载到函数中,以便与电话自动格式化程序库()一起使用 当我在一个独立的html页面中尝试这一点时,效果很好,但是当我在django项目中尝试这一点时,文件没有加载,我认为这是因为它没有找到它在路径中的位置 main.js和utils.js都在我的项目的静态目录中,所以我不确定为什么它找不到utils.js文件 main.js: $(document).ready(function() { $("#phoneNumber").intlTelInput({ uti

我需要将文件加载到函数中,以便与电话自动格式化程序库()一起使用 当我在一个独立的html页面中尝试这一点时,效果很好,但是当我在django项目中尝试这一点时,文件没有加载,我认为这是因为它没有找到它在路径中的位置

main.js和utils.js都在我的项目的静态目录中,所以我不确定为什么它找不到utils.js文件

main.js:

$(document).ready(function() {
    $("#phoneNumber").intlTelInput({
        utilsScript: "utils.js"
    });
});

当我需要在JavaScript中引用服务器端路径时,我要做的是在我最上面的模板中设置一个“app”对象,我可以在加载之后的JavaScript文件中引用它,通常是使用require.js

例如:

# base.html (upper-most template)
<!DOCTYPE html>{% load static from staticfiles %}
    <html>
        <head>. . .</head>
        <body>
            . . .
            <script>
                var myApp = {
                    staticUrl: '{{ STATIC_URL }}'
                }
            </script>
            <script src="{% static 'js/some-file.js' %}"></script>
        </body>
    </html>

# some-file.js

'use strict';

$(document).ready(function(){
    console.log(myApp.staticUrl);
});
#base.html(最上面的模板)
{%load static from staticfiles%}
. . .
. . .
var myApp={
staticUrl:“{STATIC_URL}}”
}
#some-file.js
"严格使用",;
$(文档).ready(函数(){
console.log(myApp.staticUrl);
});

查看您的URL调度程序(
URL.py
)以查看请求静态文件的实际路径

例如,在我的一个项目中,JavaScript文件位于
/static/js/

例如,如果您的配置也是如此,您可以这样做-

$(document).ready(function() {
    $("#phoneNumber").intlTelInput({
        utilsScript: "/static/js/utils.js"
    });
});
这是如果你想硬编码的网址。您可以在模板中或模板引擎未处理的.js文件中执行此操作


但是,如果您使用的是模板,我建议您使用,特别是
static
模板标记,它充当帮助程序来构建文件路径。

查看示例是否适用于您。您也可以尝试此选项。除了第一个示例中的
{%static'your_js_here.js%}
@DejaVu外,它如何知道
upload_path
uploadify_path
是什么?在视图中呈现变量,例如
context={'upload_path':upload_path,'uploadify path':uploadify path}
return render如果你用JS文件做了HTML,你可以扩展一个HTML,你想把你的JS注入到-不幸的是,我现在没有机会测试这个,并且不确定它是否是正确的,但是它应该工作。如果它不考虑在IRC上对Django频道进行寻址。