ReferenceError:<function>未定义</function>

时间:2014-10-30 06:53:17

标签: javascript django

我的控制台出现ReferenceError: serializeProducts is not defined错误,不知道原因。

  • 我有一个名为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"));
    

    备注

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

  • 我在本地运行脚本时没有收到错误,但当我从Amazon S3加载components.js文件时,这似乎无法正常工作,我无法确定权限是否公开

我想知道这可能是一个问题,components.js脚本在页面上的脚本运行之前没有完全加载?我试过添加延迟,但仍然收到错误。还有其他想法吗?

components.js:http://snapeda.s3.amazonaws.com/js/components.js

1 个答案:

答案 0 :(得分:1)

由于您已经在使用JQuery,并且根据外部组件在您的网页中包含一些代码,因此 将其包装在$(document).ready(function() { ... });内,只是在执行指令之前确保一切都很好,花花公子。

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