有人说是错误的,你把代码段2改为:window.onload=function()
{
for(var i=0;i<form1.length;i++){
  if((form1.elements[i].name=="checkbox") && form1.elements[i].checked==true){
    form1.elements[i].parentElement.parentElement.style.background="#336699";
  }else{
    form1.elements[i].parentElement.parentElement.style.background="#FFFFFF";
  }
 }
}

解决方案 »

  1.   

    更正一下:
    ”有人说,当用后退返回前一页时,IE是先执行页面上的代码,这个时候页面上控件的值都是默认的,当页面代码执行完毕后,再从缓存中取出值付给相应的控件“
    好象有道理,不清楚。另外:
    由于你的form1中含有一个submit按钮,故把i<form1.length改为i<form1.length-1,否则最后一行退回来永远是白色。
      

  2.   

    你的代码段2放在了什么位置啊? 要在调用页面的时候就调用这段代码才行啊,楼上的就是把你的代码段2放在页面onload里面了,就是页面初始化时就执行
      

  3.   

    要等页面load后才可以得到上次离开页面时的值
    如下,加一个defer就可以了:<script>
    for(var i=0;i<form1.length;i++){---->>>><script defer>
    for(var i=0;i<form1.length;i++){
      

  4.   

    谢谢大家,问题解决了,用 chouchy(城市刀客) 和 JK_10000(JK) 的方法都可以实现。谢谢