在javascript中保存数据

时间:2012-06-15 20:08:53

标签: javascript jsp

所以我有一个.js文件,有2个不同的jsp页面调用。

.js文件包含:

var savedObj;

function A(obj){ savedObj = obj);

function B(){ alert(savedObj);

X.jsp文件调用函数A,使得DOM元素onchange = functionA(this);

Y.jsp文件调用函数B使得正文onload = function B

出于某种原因,我在函数A中的调试显示savedObj = obj的分配正常工作,但在function B中,savedObj打印出null。

谢谢你们

2 个答案:

答案 0 :(得分:2)

发生这种情况是因为在JSP主体加载完毕后正在调用函数B 。这将在特定DOM元素的任何更改事件之前发生。

如果您需要功能B 来更新 savedObj ,则需要等待调用它,直到您的DOM元素触发更改事件为止。

注意:这假设您的JSP包含在同一个呈现的页面中,如果不是,则会发生这种情况,因为JavaScript状态不会在页面之间持久存在

答案 1 :(得分:0)

使用cookie来存储值肯定是使值在各个页面中保持不变的最佳方式。如果您不想进入cookie,您可以使用javascript编写新页面代替当前页面并保留值,但它很麻烦,您最好花时间学习cookie。