Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.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
Javascript 引用错误:<;功能>;没有定义_Javascript_Django - Fatal编程技术网

Javascript 引用错误:<;功能>;没有定义

Javascript 引用错误:<;功能>;没有定义,javascript,django,Javascript,Django,我在控制台中收到一个ReferenceError:SerializedProducts未定义错误,不确定原因 我有一个名为components.js的Javascript文件,其中包含一个名为serializeProducts的函数 模板调用这个components.js脚本,然后下面的脚本使用serializeProducts函数 <script type="text/javascript" src="{{STATIC_URL}}js/components.js"><

我在控制台中收到一个
ReferenceError:SerializedProducts未定义
错误,不确定原因

  • 我有一个名为
    components.js
    的Javascript文件,其中包含一个名为
    serializeProducts
    的函数
  • 模板调用这个
    components.js
    脚本,然后下面的脚本使用
    serializeProducts
    函数

        <script type="text/javascript" src="{{STATIC_URL}}js/components.js"></script>
        <script type="text/javascript">
         if($("#parsed_found").val() == undefined)
            items_found = ""
        else
            items_found = serializeProducts($("#parsed_found").val().split("\n"));
    
        if($("#parsed_not_found").val() == undefined)
            items_not_found = ""
        else
            items_not_found = serializeProductsNotFound($("#parsed_not_found").val().split("\n"));
    
    
    if($(“#已解析的_已找到”).val()==未定义)
    项目_found=“”
    其他的
    items_-found=serializedProducts($(“#已解析_-found”).val().split(“\n”);
    if($(“#已解析_未找到”).val()=未定义)
    未找到项目=“未找到”
    其他的
    items_not_found=serializedProductsNotfound($(“#已解析_not_found”).val().split(“\n”);
    
    注释

  • components.js
    肯定被找到了,因为我可以通过控制台、200状态等进行访问

  • 在本地运行脚本时,我没有发现错误,但是当我从AmazonS3加载
    components.js
    文件时,它似乎不起作用,我很难理解这一点,因为权限是公共的
我想知道这是否是
components.js
脚本在页面上的脚本运行之前没有完全加载的问题?我尝试添加延迟,但仍然得到错误。还有其他想法吗


components.js:

既然您已经在使用JQuery,并且页面中有一些代码依赖于外部组件,我真的要将其包装在
$(document.ready(function(){…})中,只是为了确保在执行指令之前一切都很好


另一种选择是将代码放在同一个
components.js
脚本中,但我不知道这对您的情况是否可行。

您能粘贴
components.js
吗?它在这里:谢谢-我刚刚尝试将它包装在这个脚本中,但仍然没有运气。仍然是相同的错误。为了安全起见,请尝试使用
$(窗口)。加载
而不是
$(文档)。准备就绪
:这可能仍然只是一个时间问题。好的,成功了!现在我在另一个文件中发现了另一个时间问题。我得到
类型错误:未定义不是一个函数
。你认为这也与时间有关吗?同样,当我“我正在本地从我的文件运行。关于这个问题,单独发布一个问题有意义吗?这更可能意味着你试图使用一些不存在的函数:它没有告诉你错误发生在哪里吗?事实上我找到了一个解决方案。我将脚本放置在继承当前模板的模板中。这给了脚本足够的时间在下一个脚本运行之前加载,并解决了我的所有问题。