刷新页面时 select值保持不变

时间:2023-03-10 04:52:02
刷新页面时 select值保持不变

刷新页面时,要使下拉菜单(select)、raido保持不变,用ajax是无法实现的。我想只能通过cookies才能实现。刷新前先把select或radio的值保存在cookies中,刷新后再填回去。下面是测试代码:

  1. <select name="sex" id="sex" onchange="save()">
  2. <option  value="01" selected >男</opton>
  3. <option  value="02" >女</opton>
  4. </select>
  5. <input id="s1" type="radio" name="xueli" value="0" onclick="save()"/>本科
  6. <input id="s2" type="radio" name="xueli" value="1" checked onclick="save()"/>专科
  1. <script language="javascript" type="text/javascript">
  2. function save() {
  3. selectIndex = document.getElementById("sex").selectedIndex;
  4. document.cookie = 'selectIndex =' + selectIndex;
  5. radios = document.getElementsByName("xueli");
  6. for (i = 0; i < radios.length; i++) {
  7. if (radios[i].checked) document.cookie = 'radioindex =' + i;
  8. }
  9. }
  10. window.onload = function () {
  11. var cooki = document.cookie;
  12. if (cooki != "") {
  13. cooki = "{\"" + cooki + "\"}";
  14. cooki = cooki.replace(/\s*/g, "").replace(/=/g, '":"').replace(/;/g, '","');
  15. var json = eval("(" + cooki + ")"); //将coolies转成json对象
  16. document.getElementById("sex").options[json.selectIndex].selected = true;
  17. document.getElementsByName("xueli")[json.radioindex].checked = true;
  18. }
  19. else
  20. save();
  21. }
  22. </script>

转自http://blog.****.net/fjnu2008/article/details/7519531