JavaScript变量范围 - 持久状态?

时间:2009-07-17 15:33:36

标签: javascript jquery jquery-ui persistence scope

我有以下设置,我需要知道如何保持状态。

1。)外部网页使用ajax加载并显示包含javascript的.jsp文件。 2.)完成此渲染后,必须调用.jsp文件中的javascript,以根据渲染过程中发生的结果执行操作。具体来说,文档对$(document).ready执行操作,这些操作决定了在以后的函数调用中必须执行的操作。

我的问题是:如何在加载页面时保留创建的数据和状态?我试过这样的事情:

外部: ajax to test.jsp

内部test.jsp

var saveMe = {};

function getsCalled()  
{  
    saveMe = {'a':function(){return false;}};  
}  

function needsData()  
{  
    //???  
}  

...后来
外部:

needsData();  

我似乎没有尝试任何工作。在这种情况下坚持国家的最佳方式是什么?

3 个答案:

答案 0 :(得分:1)

如果您想了解范围阅读this。它可以帮助你弄清楚正在发生的事情。

答案 1 :(得分:0)

您是否尝试在$(文件).ready之外声明saveMe?然后你应该能够从$(document).ready以及外部脚本中更改值。我不确定如何从ajax调用中对javascript变量进行作用,因此我不确定这是否真的有效。

答案 2 :(得分:0)

使变量成为函数对象的一个​​成员。