用cookie来保存radio的值,在Checked()函数中进行设置,可是一刷新,又回到原来的状态,cookie无法保存下来,请问是哪出错了?望大侠帮帮忙~~谢谢!!!
   
附代码如下:
<script   language="javascript">   
  <!--  
  function SetCookie(name,value)//两个参数,一个是cookie的名子,一个是值
{
    var Days = 30; //此 cookie 将被保存 30 天
    var exp  = new Date();    //new Date("December 31, 9998");
    exp.setTime(exp.getTime() + Days*24*60*60*1000);
    document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString();
}
function GetCookie(name)//取cookies函数        
{
    var arr = document.cookie.match(new RegExp("(^| )"+name+"=([^;]*)(;|$)"));
     if(arr != null) return unescape(arr[2]); return null;}  function   Checked(Txt)   
  {   
  var   Checks   =   document.getElementsByName("face"); 
  Txt = GetCookie("Txt");  
  for(var   i=0;i<Checks.length;i++)   
  {   
  if(Txt   ==   document.frm.face[i].value)   
  { 
  SetCookie("Txt",Txt)  
  document.frm.face[i].checked   =   true;   
  }   
  }   
  }   
  //-->   
  </script>   
  <BODY   onload="Checked('12234');">   
  <form   name="frm">   
  <input   type=radio   name=face   value="12234">   
  <input   type=radio   name=face   value="222">   
  <input   type=radio   name=face   value="1334">   
  </form>

解决方案 »

  1.   

    //set cookie
       
    function setcookie(name,value){
        var Days = 30;
        var exp  = new Date();
        exp.setTime(exp.getTime() + Days*24*60*60*1000);
        document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString();
    }function getcookie(name){
        var arr = document.cookie.match(new RegExp("(^| )"+name+"=([^;]*)(;|$)")); 
        if(arr != null){
            return unescape(arr[2]);
        }else{
            return "";
        }
    }
      

  2.   

    清除IE缓存 重新设置下cookie