全局javascript对象未定义错误?

时间:2014-07-03 20:43:29

标签: javascript variables global

我不知道这是否过于本地化,但我没有太多代码。我遇到的问题是在一个名为System.js的名为budgetModel的全局js文件中声明一个对象,该文件保存整个Web应用程序的数据显示为未定义。

我在BudgetModel文件中的js中创建了一个名为System.js的对象类,当用户登录网站时,会将它们指向一个名为index.php的页面,其中onload执行两个名为的方法setupSystem()然后setup()

在关闭'body'标签之前的html底部附近,我放置了两个脚本,System.js和一个设置函数,用json作为变量加载从php传递给javascript的数据{{1另一个叫budgetcost

budgetexp

同样在<script src="util/js/System.js" type="text/javascript"></script> <script type="text/javascript"> function setup(){ budgetModel.setCost(budgetcost, budgetexp); } </script> 文件中,我有这个全局函数和变量:

System.js

var budgetModel; function setupSystem(){ budgetModel = new BudgetModel(); } 文件中调用setupSystem函数之前调用setup函数。我得到的错误是抱怨index.php变量未定义。如何解决这个问题,或者甚至是否可能,如果有可能我的budgetModel脚本行应该在其他地方?

编辑: 我解决了这个问题。 System.js文件中的语法错误非常小。 我也注意到那个窗口。如果变量声明为全局,则语法无关紧要。抱歉打扰每个人x_x

EDIT2:

这里有尽可能多的代码:

的index.php:

System.js

System.js:

<!DOCTYPE html>
<html>
<head>

    <title>Test Page</title>

    <link rel="stylesheet" href="util/css/globalStyles.css">

    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

</head>
<body onload="setup();">

...

<script src="util/js/System.js" type="text/javascript"></script>
<script type="text/javascript">

    function setup(){

        if (typeof(budgetcost) !== 'undefined'){

            setupSystem();

            budgetModel.setModel(budgetcost, budgetexp);

            teamAssumpModel.setModel(teamagents);

        }
    }

    </script>

</body>

所以这就是我所拥有的。 budgetModel在index.php中工作但是当我将这个相同的文件包含到另一个php文件中时,它读取为undefined。还有什么需要让其他php文件可见?

0 个答案:

没有答案