I have a couple of scripts that work together to display selects for continents, countries, states/provinces etc. The scripts are index.php and populate_select.php. On index.php, I have labels and select boxes for these continents, etc. I don't want the selects or the labels for country or any of the other selects to display until after the continent select is activated. Each select is supposed to activate the next label and select. I tried hiding the labels and selects, and was reasonably successful. It works in Firefox, Opera and Safari, but only partially works in IE. When the page loads in IE, I get the select for continent and the labels for all of the hidden selects, not just the label for continent. After I activate the continent select, the labels are hidden the way I want until each is activated. Any ideas?

Here's the relevant code for index.php

Code:
<?php
include ('./dynamic_header.inc');
// Use the HTML header file.
?>
<html>
<head>
<title>some site</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link type="text/css" rel="stylesheet" href="templates/standard/search.css">
<!-- suggest script -->
<style type="text/css">@import url("../search/include/js_suggest/SuggestFramework.css");</style>
<script type="text/javascript" src="../search/include/js_suggest/SuggestFramework.js"></script>
<script type="text/javascript">window.onload = initializeSuggestFramework;</script>
<!-- /suggest script -->
<script language="javascript" type="text/javascript">
var table_name="";
var continentid="";
var countryid="";
var regionid="";
var stateid="";
var stateregionid="";
var countyid="";
var cityid="";
function createRequest()
{
 var xmlhttp = false;
 try{xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");}catch(e){try{xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");}catch(e){xmlhttp = false;}}
 if(!xmlhttp && typeof XMLHttpRequest!='undefined'){try{xmlhttp = new XMLHttpRequest();}catch(e){xmlhttp=false;}}
 if(!xmlhttp && window.createRequest){try{xmlhttp = window.createRequest();}catch(e){xmlhttp=false;}}
 return xmlhttp;
 }

function populate_select()
{
 var con=createRequest();
 var theUrl="populate_select.php?table="+table_name+"&continent="+continentid+"&country="+countryid+"&region="+regionid+"&state="+stateid+"&stateregion="+stateregionid+"&county="+countyid+"&city="+cityid;
 con.open("GET",theUrl,true);
 con.onreadystatechange=function()
 {
  if(con.readyState==4 && con.status==200)
  {
   if(table_name=="country")
   {
    reset_selects(1);
    if(continentid)
    {
     document.getElementById("countrydiv").innerHTML=con.responseText;
     document.getElementById("country_label").style.display="block";
     }
    }
   if(table_name=="region")
   {
    reset_selects(2);
    if(countryid)
    {
     document.getElementById("regiondiv").innerHTML=con.responseText;
     document.getElementById("region_label").style.display="block";
     }
    }
   if(table_name=="state")
   {
    reset_selects(3);
    if(regionid)
    {
     document.getElementById("statediv").innerHTML=con.responseText;
     document.getElementById("state_label").style.display="block";
     }
    }
   if(table_name=="stateregion")
   {
    reset_selects(4);
    if(stateid)
    {
     document.getElementById("stateregiondiv").innerHTML=con.responseText;
     document.getElementById("state_region_label").style.display="block";
     }
    }
   if(table_name=="county")
   {
    reset_selects(5);
    if(stateregionid)
    {
     document.getElementById("countydiv").innerHTML=con.responseText;
     document.getElementById("county_label").style.display="block";
     }
    }
   if(table_name=="city")
   {
    reset_selects(6);
    if(countyid)
    {
     document.getElementById("citydiv").innerHTML=con.responseText;
     document.getElementById("city_label").style.display="block";
     }
    }
   if(table_name=="zip")
   {
    reset_selects(7);
    if(cityid)
    {
     document.getElementById("zipdiv").innerHTML=con.responseText;
     document.getElementById("zip_label").style.display="block";
     }
    }
   }
  }
 con.send(null);
 }
function reset_selects(v)
{
 switch(v)
 {
  case 1:
   document.getElementById("countrydiv").innerHTML="";
   document.getElementById("country_label").style.display="none";
  case 2:
   document.getElementById("regiondiv").innerHTML="";
   document.getElementById("region_label").style.display="none";
  case 3:
   document.getElementById("statediv").innerHTML="";
   document.getElementById("state_label").style.display="none";
  case 4:
   document.getElementById("stateregiondiv").innerHTML="";
   document.getElementById("state_region_label").style.display="none";
  case 5:
   document.getElementById("countydiv").innerHTML="";
   document.getElementById("county_label").style.display="none";
  case 6:
   document.getElementById("citydiv").innerHTML="";
   document.getElementById("city_label").style.display="none";
  case 7:
   document.getElementById("zipdiv").innerHTML="";
   document.getElementById("zip_label").style.display="none";
  }
 }
function get_text()
{
 var query=document.getElementById("query").value!=""?document.getElementById("query").value:"";
 var _continent=document.getElementById("continent")?document.getElementById("continent").selectedIndex?document.getElementById("continent").options[document.getElementById("continent").selectedIndex].text:"":"";
 var _country=document.getElementById("country")?document.getElementById("country").selectedIndex?document.getElementById("country").options[document.getElementById("country").selectedIndex].text:"":"";
 var _region=document.getElementById("region")?document.getElementById("region").selectedIndex?document.getElementById("region").options[document.getElementById("region").selectedIndex].text:"":"";
 var _state=document.getElementById("state")?document.getElementById("state").selectedIndex?document.getElementById("state").options[document.getElementById("state").selectedIndex].text:"":"";
 var _stateregion=document.getElementById("stateregion")?document.getElementById("stateregion").selectedIndex?document.getElementById("stateregion").options[document.getElementById("stateregion").selectedIndex].text:"":"";
 var _county=document.getElementById("county")?document.getElementById("county").selectedInde ?document.getElementById("county").options[document.getElementById("county").selectedIndex].text:"":"";
 var _city=document.getElementById("city")?document.getElementById("city").selectedIndex?document.getElementById("city").options[document.getElementById("city").selectedIndex].text:"":"";
 var _zip=document.getElementById("zip")?document.getElementById("zip").selectedInde ?document.getElementById("zip").options[document.getElementById("zip").selectedIndex].text:"":"";
 document.getElementById("query").value=trim(_continent+" "+_country+" "+_region+" "+_state+" "+_stateregion+" "+_county+" "+_city+" "+_zip+" "+query);
 if(document.getElementById("query").value==""){return false;}
 return true;
 }

/* This function removes any leading, multiple and trailing spaces. */
function trim(s) {
    s = s.replace(/(^\s*)|(\s*$)/gi,"");
    s = s.replace(/[ ]{2,}/gi," ");
    s = s.replace(/\n /,"\n");
    return s;
}
</script>
<style>
.w150
{
 width:150px;
 }
.w200
{
 width:200px;
 text-align:right;
 }
.w300
{
 width:300px;
 }
.alr
{
 text-align:right;
 }
.wwp
{
 padding-bottom:40px;
 }
.ml
{
 margin-left:35px;
 }
</style>
</head>
<body onload="reset_selects(1);">
<form action="../search/search.php" method="get" onsubmit="return get_text();">
<input type="hidden" name="search" value="1">
<table width="1000px" border="0px" cellspacing="0px" cellpadding="5px">
 <tr>
  <td class="w150 wwp">&nbsp;</td>
  <td class="w200 wwp">World Wide </td>
  <td class="w300 wwp alr"><div><input type="text" name="query" id="query" size="40" value="" action="../search/include/js_suggest/suggest.php" columns="2" autocomplete="off" delay="1500"></div></td>
  <td class="w150 wwp"><input type="submit" value="Search"></td>
  <td class="w200 wwp">&nbsp;</td>
 </tr>
 <tr>
  <td class="w150">&nbsp;</td>
  <td class="w200">Continent</td>
  <td class="w300">
   <div class="ml">
    <select id="continent" onchange="table_name='country';continentid=this.value;populate_select();">
     <option value="">Select Continent</option>
     <option value="1">Africa</option>
     <option value="2">Asia</option>
     <option value="3">Europe</option>
     <option value="4">North America</option>
     <option value="5">South America</option>
     <option value="6">Oneania (Island Countries & Territories)</option>
     <option value="7">Antarctica</option>
    </select>
   </div>
  </td>
  <td colspan=2></td>
 </tr>
 <tr style="">
  <td class="w150">&nbsp;</td>
  <td class="w200"><div id="country_label">Country</div></td>
  <td class="w300"><div id="countrydiv" class="ml"></div></td>
  <td colspan=2></td>
 </tr>