大家看看我这样使用cookie为什么不能保存JS里面全局变量?
<body OnLoad="GetCookie('temp1');GetCookie('temp2');setOB();focus()" onKeyDown = "_b()" onclick = "SetCookie('temp1', a);SetCookie('temp2', k);_a()">
GetCookie和SetCookie应该放在哪里比较好,我这个主要是用来保证从下一个页面返回当前页面时,当前页面不被刷新

解决方案 »

  1.   

    GetCookie和SetCookie放到页面上……
      

  2.   

    变量放不进COOKIE的.
    试试用下面的函数序列化和反序列化吧.
    <script type="text/javascript">
    Object.prototype.Serialize = function()
    {
        var type = typeof (this);
        switch(type)
        {
             case 'Array' :
             {
                  var strArray = '['; 
                  for ( var i=0 ; i < this.length ; ++i )
                  {
                       var value = ''; 
                       if ( this[i] )
                       {
                            value = this[i].Serialize();
                       }
                       strArray += value + ',';
                  }
                  if ( strArray.charAt(strArray.length-1) == ',' )
                  {
                       strArray = strArray.substr(0, strArray.length-1);
                  }
                  strArray += ']';  
                  return strArray;
             }
             case 'Date' :
             {
                  return 'new Date(' + this.getTime() + ')';
             }
             case 'Boolean' :
             case 'Function' :
             case 'Number' :
             case 'String' :
             {
                  return this.toString();
             }
             default :
             {
                  var serialize = '{'; 
                  for ( var key in this )
                  {
                       if ( key == 'Serialize' ) continue; 
                       var subserialize = 'null';
                       if ( this[key] != undefined )
                       {
                            subserialize = this[key].Serialize();
                       }
                       serialize += '\r\n' + key + ' : ' + subserialize + ',';
                  }
                  if ( serialize.charAt(serialize.length-1) == ',' )
                  {
                       serialize = serialize.substr(0, serialize.length-1);
                  }
                  serialize += '\r\n}';
                  return serialize;
             }
        }
    };var obj1 = []; 
    alert(obj1.Serialize());var obj2 = [1,[2,[3,[4,[5,[6,[7,[8,[9,[0]]]]]]]]]];
    alert(obj2.Serialize());var obj3 = 
        {
             Properties1 : 1, Properties2 : '2', Properties3 : [3],
             Method1 : function(){ return this.Properties1 + this.Properties3[0];},
             Method2 : function(){ return this.Preperties2; }
        };
    alert(obj3.Serialize());  var obj4 = [null, 1, 'string', true, function(){return 'keke';}, new Object()];
    alert(obj4.Serialize());
    </script>