兼容firefox和IE的两级联动下拉菜单的javascript代码

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html>
<head>
    
<title>Untitled</title>
    
<script language='javascript'>
    
//*****************************************   显示时间  *********************************************************    
    function showTime()
{
    
    a
=new Date();                //创建a为一个新的时期对象
    ye=a.getYear();                //y的值为从对象a中获取年份值 两位数年份
    year=a.getFullYear();        //获取全年份数 四位数年份
    month=a.getMonth()+1;            //获取月份值
    day=a.getDate();            //获取日期值
    week=getWeek(a.getDay());    //获取当前星期值
    hours=a.getHours();            //获取当前小时数
    minutes=a.getMinutes();        //获取当前分钟数
    seconds=a.getSeconds();        //获取当前秒钟数
    var str= year+""+month+""+day+"日  "+(hours<10?'0'+hours:hours)+":"+(minutes<10?'0'+minutes:minutes)+":"+(seconds<10?'0'+seconds:seconds)+"  "+week;
    setTimeout(
"showTime()",1000);
    
//return str;
    document.getElementById("time").innerHTML=str;
}


function getWeek(dayTemp)
{
    
var day="";
    
switch(dayTemp)
    
{
        
case 1:
        
{
            day 
= "星期一";
            
break;
        }

        
case 2:
        
{
            day 
= "星期二";
            
break;
        }

        
case 3:
        
{
            day 
= "星期三";
            
break;
        }

        
case 4:
        
{
            day 
= "星期四";
            
break;
        }

        
case 5:
        
{
            day 
= "星期五";
            
break;
        }

        
case 6:
        
{
            day 
= "星期六";
            
break;
        }

        
default:
        
{
            day 
= "星期日";
            
break;
        }

    }

    
return day;
}

//******************************************************javascript 哈唏表*********************************************
    function Hashtable()
    
{
        
this._hash = new Object();
        
this.add = function(key,value)
        
{
            
if(typeof(key)!="undefined")
            
{
                
if(this.contains(key)==false)
                
{
                    
this._hash[key]=typeof(value)=="undefined"?null:value;
                    
return true;
                }
 
                
else 
                
{
                    
return false;
                }

            }
 
            
else 
            
{
                
return false;
            }

        }

        
this.remove = function(key){delete this._hash[key];}
        
this.count = function(){var i=0;for(var k in this._hash){i++;} return i;}
        
this.items = function(key){return this._hash[key];}
        
this.contains = function(key)return typeof(this._hash[key])!="undefined";}
        
this.clear = function(){for(var k in this._hash){delete this._hash[k];}}
        
this.showAll=function()
        
{
            
var val="";
            
for(var i in this._hash)
            
{
                val
+=this.items(i)+"|";
            }

            
return val.substring(0,val.length-1);
        }

    }

    
var hs=new Hashtable();
    hs.add(
"广东","--请选择--,潮州,东莞,佛山,广州,河源,惠州,江门,揭阳,茂名,梅州,清远,汕头,汕尾,韶关,深圳,阳江,云浮,湛江,肇庆,中山,珠海");
    hs.add(
"安徽","--请选择--,合肥市,淮北市,黄山市,安庆市,蚌埠市,滁州市");
    hs.add(
"福建","--请选择--,福州,龙岩,南平,宁德,莆田,泉州,三明,厦门,漳州");
    hs.add(
"四川","--请选择--,阿坝藏族羌族自治州,巴中,成都,达州,德阳,甘孜藏族自治州,广安,广元,乐山,凉山彝族自治州,眉山,绵阳,南充,内江,攀枝花,遂宁,雅安,宜宾,资阳,自贡,泸州");
    hs.add(
"北京","--请选择--,东城区,西城区,崇文区,宣武区,朝阳区");
    hs.add(
"浙江","--请选择--,杭州,湖州,嘉兴,金华,丽水,宁波,绍兴,台州,温州,舟山,衢州");
    hs.add(
"新疆","--请选择--,阿克苏,阿拉尔,巴音郭楞蒙古自治州,博尔塔拉蒙古自治州,昌吉回族自治州,哈密,和田,喀什,克拉玛依,克孜勒苏柯尔克孜自治州,石河子,图木舒克,吐鲁番,乌鲁木齐,五家渠,伊犁哈萨克自治州");
    hs.add(
"内蒙古自治区","--请选择城市--,呼和浩特市,包头市,乌海市,赤峰市,通辽市,鄂尔多斯市,呼伦贝尔市,巴彦淖尔市,乌兰察布市,兴安盟,锡林郭勒盟,阿拉善盟");
    
function initProvince()
    
{
        showTime();
        
var arrProvince=new Array('--请选择省份--','广东','安徽','湖南','四川','北京','内蒙古自治区','福建','新疆','浙江');
        
var objProvince=document.getElementById("Province");
        
for(var i=0;i<arrProvince.length;i++)
        
{
            
var option=document.createElement('OPTION');
            option.text
=arrProvince[i];
            option.value
=i+":"+arrProvince[i];
            
//alert(option.outerHTML);
            objProvince.options.add(option);
        }

        
var objCity    =document.getElementById("City");
        
var option=document.createElement('OPTION');
            option.text
="--没有相应城市--";
            option.value
="--没有相应城市--";                    
            objCity.options.add(option);
            objCity.disabled
=true;        
    }

    
function showCity()
    
{    
        
var obj=document.getElementById("Province");
        
var objCity    =document.getElementById("City");
        objCity.options.length
=0;
        
for(var i=0;i<obj.options.length;i++)
        
{        
            
if(obj.options[i].selected==true)
            
{                
                
//alert(obj.options[i].text);
                if(hs.contains(obj.options[i].text))
                
{
                    
//alert(hs.items(obj.options[i].text));
                    var arrCity=hs.items(obj.options[i].text).split(',');
                    
for(var j=0;j<arrCity.length;j++)
                    
{
                        
var option=document.createElement('OPTION');
                        option.text
=arrCity[j];
                        option.value
=i+":"+arrCity[j];                        
                        objCity.options.add(option);
                        objCity.disabled
=false;
                    
                    }
                    
                }

                
else
                
{
                    
var option=document.createElement('OPTION');
                        option.text
="--没有相应城市--";
                        option.value
="--没有相应城市--";                    
                        objCity.options.add(option);
                        objCity.disabled
=true;
                }

            }

        }
        
    }

//*****************************************读取XML字符串***********************************************
    var xmlDoc;
    
var xmlStr="<Root><Province Name=\"--请选择省份--\" Id=\"\"/><Province Name=\"北京市\" Id=\"110000\"><City Name=\"市辖区\" Id=\"110100\" /><City Name=\"县\" Id=\"110200\" /></Province><Province Name=\"天津市\" Id=\"120000\"><City Name=\"市辖区\" Id=\"120100\" /><City Name=\"县\" Id=\"120200\" /></Province><Province Name=\"河北省\" Id=\"130000\"><City Name=\"石家庄市\" Id=\"130100\" /><City Name=\"唐山市\" Id=\"130200\" /><City Name=\"秦皇岛市\" Id=\"130300\" /><City Name=\"邯郸市\" Id=\"130400\" /><City Name=\"邢台市\" Id=\"130500\" /><City Name=\"保定市\" Id=\"130600\" /><City Name=\"张家口市\" Id=\"130700\" /><City Name=\"承德市\" Id=\"130800\" /><City Name=\"沧州市\" Id=\"130900\" /><City Name=\"廊坊市\" Id=\"131000\" /><City Name=\"衡水市\" Id=\"131100\" /></Province><Province Name=\"山西省\" Id=\"140000\"><City Name=\"太原市\" Id=\"140100\" /><City Name=\"大同市\" Id=\"140200\" /><City Name=\"阳泉市\" Id=\"140300\" /><City Name=\"长治市\" Id=\"140400\" /><City Name=\"晋城市\" Id=\"140500\" /><City Name=\"朔州市\" Id=\"140600\" /><City Name=\"晋中市\" Id=\"140700\" /><City Name=\"运城市\" Id=\"140800\" /><City Name=\"忻州市\" Id=\"140900\" /><City Name=\"临汾市\" Id=\"141000\" /><City Name=\"吕梁市\" Id=\"141100\" /></Province><Province Name=\"内蒙古自治区\" Id=\"150000\"><City Name=\"呼和浩特市\" Id=\"150100\" /><City Name=\"包头市\" Id=\"150200\" /><City Name=\"乌海市\" Id=\"150300\" /><City Name=\"赤峰市\" Id=\"150400\" /><City Name=\"通辽市\" Id=\"150500\" /><City Name=\"鄂尔多斯市\" Id=\"150600\" /><City Name=\"呼伦贝尔市\" Id=\"150700\" /><City Name=\"巴彦淖尔市\" Id=\"150800\" /><City Name=\"乌兰察布市\" Id=\"150900\" /><City Name=\"兴安盟\" Id=\"152200\" /><City Name=\"锡林郭勒盟\" Id=\"152500\" /><City Name=\"阿拉善盟\" Id=\"152900\" /></Province><Province Name=\"辽宁省\" Id=\"210000\"><City Name=\"沈阳市\" Id=\"210100\" /><City Name=\"大连市\" Id=\"210200\" /><City Name=\"鞍山市\" Id=\"210300\" /><City Name=\"抚顺市\" Id=\"210400\" /><City Name=\"本溪市\" Id=\"210500\" /><City Name=\"丹东市\" Id=\"210600\" /><City Name=\"锦州市\" Id=\"210700\" /><City Name=\"营口市\" Id=\"210800\" /><City Name=\"阜新市\" Id=\"210900\" /><City Name=\"辽阳市\" Id=\"211000\" /><City Name=\"盘锦市\" Id=\"211100\" /><City Name=\"铁岭市\" Id=\"211200\" /><City Name=\"朝阳市\" Id=\"211300\" /><City Name=\"葫芦岛市\" Id=\"211400\" /></Province><Province Name=\"吉林省\" Id=\"220000\"><City Name=\"长春市\" Id=\"220100\" /><City Name=\"吉林市\" Id=\"220200\" /><City Name=\"四平市\" Id=\"220300\" /><City Name=\"辽源市\" Id=\"220400\" /><City Name=\"通化市\" Id=\"220500\" /><City Name=\"白山市\" Id=\"220600\" /><City Name=\"松原市\" Id=\"220700\" /><City Name=\"白城市\" Id=\"220800\" /><City Name=\"延边朝鲜族自治州\" Id=\"222400\" /></Province><Province Name=\"黑龙江省\" Id=\"230000\"><City Name=\"哈尔滨市\" Id=\"230100\" /><City Name=\"齐齐哈尔市\" Id=\"230200\" /><City Name=\"鸡西市\" Id=\"230300\" /><City Name=\"鹤岗市\" Id=\"230400\" /><City Name=\"双鸭山市\" Id=\"230500\" /><City Name=\"大庆市\" Id=\"230600\" /><City Name=\"伊春市\" Id=\"230700\" /><City Name=\"佳木斯市\" Id=\"230800\" /><City Name=\"七台河市\" Id=\"230900\" /><City Name=\"牡丹江市\" Id=\"231000\" /><City Name=\"黑河市\" Id=\"231100\" /><City Name=\"绥化市\" Id=\"231200\" /><City Name=\"大兴安岭地区\" Id=\"232700\" /></Province><Province Name=\"上海市\" Id=\"310000\"><City Name=\"市辖区\" Id=\"310100\" /><City Name=\"县\" Id=\"310200\" /></Province><Province Name=\"江苏省\" Id=\"320000\"><City Name=\"南京市\" Id=\"320100\" /><City Name=\"无锡市\" Id=\"320200\" /><City Name=\"徐州市\" Id=\"320300\" /><City Name=\"常州市\" Id=\"320400\" /><City Name=\"苏州市\" Id=\"320500\" /><City Name=\"南通市\" Id=\"320600\" /><City Name=\"连云港市\" Id=\"320700\" /><City Name=\"淮安市\" Id=\"320800\" /><City Name=\"盐城市\" Id=\"320900\" /><City Name=\"扬州市\" Id=\"321000\" /><City Name=\"镇江市\" Id=\"321100\" /><City Name=\"泰州市\" Id=\"321200\" /><City Name=\"宿迁市\" Id=\"321300\" /></Province><Province Name=\"浙江省\" Id=\"330000\"><City Name=\"杭州市\" Id=\"330100\" /><City Name=\"宁波市\" Id=\"330200\" /><City Name=\"温州市\" Id=\"330300\" /><City Name=\"嘉兴市\" Id=\"330400\" /><City Name=\"湖州市\" Id=\"330500\" /><City Name=\"绍兴市\" Id=\"330600\" /><City Name=\"金华市\" Id=\"330700\" /><City Name=\"衢州市\" Id=\"330800\" /><City Name=\"舟山市\" Id=\"330900\" /><City Name=\"台州市\" Id=\"331000\" /><City Name=\"丽水市\" Id=\"331100\" /></Province><Province Name=\"安徽省\" Id=\"340000\"><City Name=\"合肥市\" Id=\"340100\" /><City Name=\"芜湖市\" Id=\"340200\" /><City Name=\"蚌埠市\" Id=\"340300\" /><City Name=\"淮南市\" Id=\"340400\" /><City Name=\"马鞍山市\" Id=\"340500\" /><City Name=\"淮北市\" Id=\"340600\" /><City Name=\"铜陵市\" Id=\"340700\" /><City Name=\"安庆市\" Id=\"340800\" /><City Name=\"黄山市\" Id=\"341000\" /><City Name=\"滁州市\" Id=\"341100\" /><City Name=\"阜阳市\" Id=\"341200\" /><City Name=\"宿州市\" Id=\"341300\" /><City Name=\"巢湖市\" Id=\"341400\" /><City Name=\"六安市\" Id=\"341500\" /><City Name=\"亳州市\" Id=\"341600\" /><City Name=\"池州市\" Id=\"341700\" /><City Name=\"宣城市\" Id=\"341800\" /></Province><Province Name=\"福建省\" Id=\"350000\"><City Name=\"福州市\" Id=\"350100\" /><City Name=\"厦门市\" Id=\"350200\" /><City Name=\"莆田市\" Id=\"350300\" /><City Name=\"三明市\" Id=\"350400\" /><City Name=\"泉州市\" Id=\"350500\" /><City Name=\"漳州市\" Id=\"350600\" /><City Name=\"南平市\" Id=\"350700\" /><City Name=\"龙岩市\" Id=\"350800\" /><City Name=\"宁德市\" Id=\"350900\" /></Province><Province Name=\"江西省\" Id=\"360000\"><City Name=\"南昌市\" Id=\"360100\" /><City Name=\"景德镇市\" Id=\"360200\" /><City Name=\"萍乡市\" Id=\"360300\" /><City Name=\"九江市\" Id=\"360400\" /><City Name=\"新余市\" Id=\"360500\" /><City Name=\"鹰潭市\" Id=\"360600\" /><City Name=\"赣州市\" Id=\"360700\" /><City Name=\"吉安市\" Id=\"360800\" /><City Name=\"宜春市\" Id=\"360900\" /><City Name=\"抚州市\" Id=\"361000\" /><City Name=\"上饶市\" Id=\"361100\" /></Province><Province Name=\"山东省\" Id=\"370000\"><City Name=\"济南市\" Id=\"370100\" /><City Name=\"青岛市\" Id=\"370200\" /><City Name=\"淄博市\" Id=\"370300\" /><City Name=\"枣庄市\" Id=\"370400\" /><City Name=\"东营市\" Id=\"370500\" /><City Name=\"烟台市\" Id=\"370600\" /><City Name=\"潍坊市\" Id=\"370700\" /><City Name=\"济宁市\" Id=\"370800\" /><City Name=\"泰安市\" Id=\"370900\" /><City Name=\"威海市\" Id=\"371000\" /><City Name=\"日照市\" Id=\"371100\" /><City Name=\"莱芜市\" Id=\"371200\" /><City Name=\"临沂市\" Id=\"371300\" /><City Name=\"德州市\" Id=\"371400\" /><City Name=\"聊城市\" Id=\"371500\" /><City Name=\"滨州市\" Id=\"371600\" /><City Name=\"荷泽市\" Id=\"371700\" /></Province><Province Name=\"河南省\" Id=\"410000\"><City Name=\"郑州市\" Id=\"410100\" /><City Name=\"开封市\" Id=\"410200\" /><City Name=\"洛阳市\" Id=\"410300\" /><City Name=\"平顶山市\" Id=\"410400\" /><City Name=\"安阳市\" Id=\"410500\" /><City Name=\"鹤壁市\" Id=\"410600\" /><City Name=\"新乡市\" Id=\"410700\" /><City Name=\"焦作市\" Id=\"410800\" /><City Name=\"濮阳市\" Id=\"410900\" /><City Name=\"许昌市\" Id=\"411000\" /><City Name=\"漯河市\" Id=\"411100\" /><City Name=\"三门峡市\" Id=\"411200\" /><City Name=\"南阳市\" Id=\"411300\" /><City Name=\"商丘市\" Id=\"411400\" /><City Name=\"信阳市\" Id=\"411500\" /><City Name=\"周口市\" Id=\"411600\" /><City Name=\"驻马店市\" Id=\"411700\" /></Province><Province Name=\"湖北省\" Id=\"420000\"><City Name=\"武汉市\" Id=\"420100\" /><City Name=\"黄石市\" Id=\"420200\" /><City Name=\"十堰市\" Id=\"420300\" /><City Name=\"宜昌市\" Id=\"420500\" /><City Name=\"襄樊市\" Id=\"420600\" /><City Name=\"鄂州市\" Id=\"420700\" /><City Name=\"荆门市\" Id=\"420800\" /><City Name=\"孝感市\" Id=\"420900\" /><City Name=\"荆州市\" Id=\"421000\" /><City Name=\"黄冈市\" Id=\"421100\" /><City Name=\"咸宁市\" Id=\"421200\" /><City Name=\"随州市\" Id=\"421300\" /><City Name=\"恩施土家族苗族自治州\" Id=\"422800\" /><City Name=\"省直辖行政单位\" Id=\"429000\" /></Province><Province Name=\"湖南省\" Id=\"430000\"><City Name=\"长沙市\" Id=\"430100\" /><City Name=\"株洲市\" Id=\"430200\" /><City Name=\"湘潭市\" Id=\"430300\" /><City Name=\"衡阳市\" Id=\"430400\" /><City Name=\"邵阳市\" Id=\"430500\" /><City Name=\"岳阳市\" Id=\"430600\" /><City Name=\"常德市\" Id=\"430700\" /><City Name=\"张家界市\" Id=\"430800\" /><City Name=\"益阳市\" Id=\"430900\" /><City Name=\"郴州市\" Id=\"431000\" /><City Name=\"永州市\" Id=\"431100\" /><City Name=\"怀化市\" Id=\"431200\" /><City Name=\"娄底市\" Id=\"431300\" /><City Name=\"湘西土家族苗族自治州\" Id=\"433100\" /></Province><Province Name=\"广东省\" Id=\"440000\"><City Name=\"广州市\" Id=\"440100\" /><City Name=\"韶关市\" Id=\"440200\" /><City Name=\"深圳市\" Id=\"440300\" /><City Name=\"珠海市\" Id=\"440400\" /><City Name=\"汕头市\" Id=\"440500\" /><City Name=\"佛山市\" Id=\"440600\" /><City Name=\"江门市\" Id=\"440700\" /><City Name=\"湛江市\" Id=\"440800\" /><City Name=\"茂名市\" Id=\"440900\" /><City Name=\"肇庆市\" Id=\"441200\" /><City Name=\"惠州市\" Id=\"441300\" /><City Name=\"梅州市\" Id=\"441400\" /><City Name=\"汕尾市\" Id=\"441500\" /><City Name=\"河源市\" Id=\"441600\" /><City Name=\"阳江市\" Id=\"441700\" /><City Name=\"清远市\" Id=\"441800\" /><City Name=\"东莞市\" Id=\"441900\" /><City Name=\"中山市\" Id=\"442000\" /><City Name=\"潮州市\" Id=\"445100\" /><City Name=\"揭阳市\" Id=\"445200\" /><City Name=\"云浮市\" Id=\"445300\" /></Province><Province Name=\"广西壮族自治区\" Id=\"450000\"><City Name=\"南宁市\" Id=\"450100\" /><City Name=\"柳州市\" Id=\"450200\" /><City Name=\"桂林市\" Id=\"450300\" /><City Name=\"梧州市\" Id=\"450400\" /><City Name=\"北海市\" Id=\"450500\" /><City Name=\"防城港市\" Id=\"450600\" /><City Name=\"钦州市\" Id=\"450700\" /><City Name=\"贵港市\" Id=\"450800\" /><City Name=\"玉林市\" Id=\"450900\" /><City Name=\"百色市\" Id=\"451000\" /><City Name=\"贺州市\" Id=\"451100\" /><City Name=\"河池市\" Id=\"451200\" /><City Name=\"来宾市\" Id=\"451300\" /><City Name=\"崇左市\" Id=\"451400\" /></Province><Province Name=\"海南省\" Id=\"460000\"><City Name=\"海口市\" Id=\"460100\" /><City Name=\"三亚市\" Id=\"460200\" /><City Name=\"省直辖县级行政单位\" Id=\"469000\" /></Province><Province Name=\"重庆市\" Id=\"500000\"><City Name=\"市辖区\" Id=\"500100\" /><City Name=\"县\" Id=\"500200\" /><City Name=\"市\" Id=\"500300\" /></Province><Province Name=\"四川省\" Id=\"510000\"><City Name=\"成都市\" Id=\"510100\" /><City Name=\"自贡市\" Id=\"510300\" /><City Name=\"攀枝花市\" Id=\"510400\" /><City Name=\"泸州市\" Id=\"510500\" /><City Name=\"德阳市\" Id=\"510600\" /><City Name=\"绵阳市\" Id=\"510700\" /><City Name=\"广元市\" Id=\"510800\" /><City Name=\"遂宁市\" Id=\"510900\" /><City Name=\"内江市\" Id=\"511000\" /><City Name=\"乐山市\" Id=\"511100\" /><City Name=\"南充市\" Id=\"511300\" /><City Name=\"眉山市\" Id=\"511400\" /><City Name=\"宜宾市\" Id=\"511500\" /><City Name=\"广安市\" Id=\"511600\" /><City Name=\"达州市\" Id=\"511700\" /><City Name=\"雅安市\" Id=\"511800\" /><City Name=\"巴中市\" Id=\"511900\" /><City Name=\"资阳市\" Id=\"512000\" /><City Name=\"阿坝藏族羌族自治州\" Id=\"513200\" /><City Name=\"甘孜藏族自治州\" Id=\"513300\" /><City Name=\"凉山彝族自治州\" Id=\"513400\" /></Province><Province Name=\"贵州省\" Id=\"520000\"><City Name=\"贵阳市\" Id=\"520100\" /><City Name=\"六盘水市\" Id=\"520200\" /><City Name=\"遵义市\" Id=\"520300\" /><City Name=\"安顺市\" Id=\"520400\" /><City Name=\"铜仁地区\" Id=\"522200\" /><City Name=\"黔西南布依族苗族自治州\" Id=\"522300\" /><City Name=\"毕节地区\" Id=\"522400\" /><City Name=\"黔东南苗族侗族自治州\" Id=\"522600\" /><City Name=\"黔南布依族苗族自治州\" Id=\"522700\" /></Province><Province Name=\"云南省\" Id=\"530000\"><City Name=\"昆明市\" Id=\"530100\" /><City Name=\"曲靖市\" Id=\"530300\" /><City Name=\"玉溪市\" Id=\"530400\" /><City Name=\"保山市\" Id=\"530500\" /><City Name=\"昭通市\" Id=\"530600\" /><City Name=\"丽江市\" Id=\"530700\" /><City Name=\"思茅市\" Id=\"530800\" /><City Name=\"临沧市\" Id=\"530900\" /><City Name=\"楚雄彝族自治州\" Id=\"532300\" /><City Name=\"红河哈尼族彝族自治州\" Id=\"532500\" /><City Name=\"文山壮族苗族自治州\" Id=\"532600\" /><City Name=\"西双版纳傣族自治州\" Id=\"532800\" /><City Name=\"大理白族自治州\" Id=\"532900\" /><City Name=\"德宏傣族景颇族自治州\" Id=\"533100\" /><City Name=\"怒江傈僳族自治州\" Id=\"533300\" /><City Name=\"迪庆藏族自治州\" Id=\"533400\" /></Province><Province Name=\"西藏自治区\" Id=\"540000\"><City Name=\"拉萨市\" Id=\"540100\" /><City Name=\"昌都地区\" Id=\"542100\" /><City Name=\"山南地区\" Id=\"542200\" /><City Name=\"日喀则地区\" Id=\"542300\" /><City Name=\"那曲地区\" Id=\"542400\" /><City Name=\"阿里地区\" Id=\"542500\" /><City Name=\"林芝地区\" Id=\"542600\" /></Province><Province Name=\"陕西省\" Id=\"610000\"><City Name=\"西安市\" Id=\"610100\" /><City Name=\"铜川市\" Id=\"610200\" /><City Name=\"宝鸡市\" Id=\"610300\" /><City Name=\"咸阳市\" Id=\"610400\" /><City Name=\"渭南市\" Id=\"610500\" /><City Name=\"延安市\" Id=\"610600\" /><City Name=\"汉中市\" Id=\"610700\" /><City Name=\"榆林市\" Id=\"610800\" /><City Name=\"安康市\" Id=\"610900\" /><City Name=\"商洛市\" Id=\"611000\" /></Province><Province Name=\"甘肃省\" Id=\"620000\"><City Name=\"兰州市\" Id=\"620100\" /><City Name=\"嘉峪关市\" Id=\"620200\" /><City Name=\"金昌市\" Id=\"620300\" /><City Name=\"白银市\" Id=\"620400\" /><City Name=\"天水市\" Id=\"620500\" /><City Name=\"武威市\" Id=\"620600\" /><City Name=\"张掖市\" Id=\"620700\" /><City Name=\"平凉市\" Id=\"620800\" /><City Name=\"酒泉市\" Id=\"620900\" /><City Name=\"庆阳市\" Id=\"621000\" /><City Name=\"定西市\" Id=\"621100\" /><City Name=\"陇南市\" Id=\"621200\" /><City Name=\"临夏回族自治州\" Id=\"622900\" /><City Name=\"甘南藏族自治州\" Id=\"623000\" /></Province><Province Name=\"青海省\" Id=\"630000\"><City Name=\"西宁市\" Id=\"630100\" /><City Name=\"海东地区\" Id=\"632100\" /><City Name=\"海北藏族自治州\" Id=\"632200\" /><City Name=\"黄南藏族自治州\" Id=\"632300\" /><City Name=\"海南藏族自治州\" Id=\"632500\" /><City Name=\"果洛藏族自治州\" Id=\"632600\" /><City Name=\"玉树藏族自治州\" Id=\"632700\" /><City Name=\"海西蒙古族藏族自治州\" Id=\"632800\" /></Province><Province Name=\"宁夏回族自治区\" Id=\"640000\"><City Name=\"银川市\" Id=\"640100\" /><City Name=\"石嘴山市\" Id=\"640200\" /><City Name=\"吴忠市\" Id=\"640300\" /><City Name=\"固原市\" Id=\"640400\" /><City Name=\"中卫市\" Id=\"640500\" /></Province><Province Name=\"新疆维吾尔自治区\" Id=\"650000\"><City Name=\"乌鲁木齐市\" Id=\"650100\" /><City Name=\"克拉玛依市\" Id=\"650200\" /><City Name=\"吐鲁番地区\" Id=\"652100\" /><City Name=\"哈密地区\" Id=\"652200\" /><City Name=\"昌吉回族自治州\" Id=\"652300\" /><City Name=\"博尔塔拉蒙古自治州\" Id=\"652700\" /><City Name=\"巴音郭楞蒙古自治州\" Id=\"652800\" /><City Name=\"阿克苏地区\" Id=\"652900\" /><City Name=\"克孜勒苏柯尔克孜自治州\" Id=\"653000\" /><City Name=\"喀什地区\" Id=\"653100\" /><City Name=\"和田地区\" Id=\"653200\" /><City Name=\"伊犁哈萨克自治州\" Id=\"654000\" /><City Name=\"塔城地区\" Id=\"654200\" /><City Name=\"阿勒泰地区\" Id=\"654300\" /><City Name=\"省直辖行政单位\" Id=\"659000\" /></Province><Province Name=\"台湾省\" Id=\"710000\" /><Province Name=\"香港特别行政区\" Id=\"810000\" /><Province Name=\"澳门特别行政区\" Id=\"820000\" /></Root>";
    
function initXmlProvince()
    
{            
        
var objXmlProvince=document.getElementById("xmlProvince");    
        
//IE
        if(window.ActiveXObject) 
        

            xmlDoc
=new ActiveXObject("Microsoft.XMLDOM"); 
            xmlDoc.async
=false
            xmlDoc.loadXML(xmlStr);        
            
var provinceList=xmlDoc.documentElement;
            
var count=provinceList.childNodes.length;
            
for(var i=0;i<count;i++)
            
{
                
var id=provinceList.childNodes[i].getAttribute("Id");
                
var name=provinceList.childNodes[i].getAttribute("Name");
                
var option=document.createElement('OPTION');
                option.text
=name;
                option.value
=id;
                
//alert(option.outerHTML);
                objXmlProvince.options.add(option);
                
            }
    
        }
 
        
//FireFox
        else if (document.implementation   &&   document.implementation.createDocument) 
        

               
            
var parser = new DOMParser(); 
            xmlDoc 
= parser.parseFromString(xmlStr, "text/xml"); 
            
var provinceList=xmlDoc.documentElement;
            
var count=provinceList.childNodes.length;
            
for(var i=0;i<count;i++)
            
{
                
var id=provinceList.childNodes[i].getAttribute("Id");
                
var name=provinceList.childNodes[i].getAttribute("Name");
                
var option=document.createElement('OPTION');
                option.text
=name;
                option.value
=id;                
                objXmlProvince.options.add(option);
                
            }
          
            
//alert(xmlDoc.documentElement.firstChild.firstChild.childNodes.length);     
        }
 
        
else 
        

            alert( 
'Your   browser   cannot   handle   this   script '); 
        }
 
        
var objCity    =document.getElementById("xmlCity");
        
var option=document.createElement('OPTION');
            option.text
="--没有相应城市--";
            option.value
="--没有相应城市--";                    
            objCity.options.add(option);
            objCity.disabled
=true;    
    }

    
function showXmlCity()
    
{
        
var obj=document.getElementById("xmlProvince");
        
var objxmlCity=document.getElementById("xmlCity");
        objxmlCity.options.length
=0;    
        
if(window.ActiveXObject)
        
{
            
for(var i=0;i<obj.options.length;i++)
            
{        
                
if(obj.options[i].selected==true)
                
{                
                    
//alert(obj.options[i].value);
                    var Pid=obj.options[i].value;
                    
var pNode=xmlDoc.selectSingleNode("//Province[@Id='"+Pid+"']");                    
                    
if(pNode.hasChildNodes)
                    
{
                        objxmlCity.disabled
=false;
                        
var length=pNode.childNodes.length;
                        
for(var k=0;k<length;k++)
                        
{
                            
var id=pNode.childNodes[k].getAttribute("Id");
                            
var name=pNode.childNodes[k].getAttribute("Name");
                            
var option=document.createElement('OPTION');
                            option.text
=name;
                            option.value
=id;                
                            objxmlCity.options.add(option);
                        }

                    }

                    
else
                    
{
                        
var option=document.createElement('OPTION');
                        option.text
="--没有相应城市--";
                        option.value
="--没有相应城市--";                    
                        objxmlCity.options.add(option);
                        objxmlCity.disabled
=true;
                    }
        
                }
                
            }

        }

        
else
        
{
            
for(var i=0;i<obj.options.length;i++)
            
{        
                
if(obj.options[i].selected==true)
                
{                
                    
//alert(obj.options[i].value);
                    var Pid=obj.options[i].value;                
                    
var pNode=xmlDoc.selectSingleNode("//Province[@Id='"+Pid+"']");
                
//    alert(pNode.childNodes.length); 
                    if(pNode.hasChildNodes())
                    
{
                        objxmlCity.disabled
=false;
                        
var length=pNode.childNodes.length;
                        
for(var k=0;k<length;k++)
                        
{
                            
var id=pNode.childNodes[k].getAttribute("Id");
                            
var name=pNode.childNodes[k].getAttribute("Name");
                            
var option=document.createElement('OPTION');
                            option.text
=name;
                            option.value
=id;                
                            objxmlCity.options.add(option);
                        }

                    }

                    
else
                    
{
                        
var option=document.createElement('OPTION');
                        option.text
="--没有相应城市--";
                        option.value
="--没有相应城市--";                    
                        objxmlCity.options.add(option);
                        objxmlCity.disabled
=true;
                    }
        
                }

                
            }

        }

        
    }
    
    
if(document.implementation && document.implementation.createDocument)
    
{
        XMLDocument.prototype.loadXML 
= function(xmlString)
        
{
            
var childNodes = this.childNodes;
            
for (var i = childNodes.length - 1; i >= 0; i--)
                
this.removeChild(childNodes[i]);

            
var dp = new DOMParser();
            
var newDOM = dp.parseFromString(xmlString, "text/xml");
            
var newElt = this.importNode(newDOM.documentElement, true);
            
this.appendChild(newElt);
        }
;

        
// check for XPath implementation
        if( document.implementation.hasFeature("XPath""3.0") )
        
{
           
// prototying the XMLDocument
           XMLDocument.prototype.selectNodes = function(cXPathString, xNode)
           
{
              
if!xNode ) { xNode = this; } 
              
var oNSResolver = this.createNSResolver(this.documentElement)
              
var aItems = this.evaluate(cXPathString, xNode, oNSResolver, 
                           XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, 
null)
              
var aResult = [];
              
forvar i = 0; i < aItems.snapshotLength; i++)
              
{
                 aResult[i] 
=  aItems.snapshotItem(i);
              }

              
return aResult;
           }


           
// prototying the Element
           Element.prototype.selectNodes = function(cXPathString)
           
{
              
if(this.ownerDocument.selectNodes)
              
{
                 
return this.ownerDocument.selectNodes(cXPathString, this);
              }

              
else{throw "For XML Elements Only";}
           }

        }


        
// check for XPath implementation
        if( document.implementation.hasFeature("XPath""3.0") )
        
{
           
// prototying the XMLDocument
           XMLDocument.prototype.selectSingleNode = function(cXPathString, xNode)
           
{
              
if!xNode ) { xNode = this; } 
              
var xItems = this.selectNodes(cXPathString, xNode);
              
if( xItems.length > 0 )
              
{
                 
return xItems[0];
              }

              
else
              
{
                 
return null;
              }

           }

           
           
// prototying the Element
           Element.prototype.selectSingleNode = function(cXPathString)
           
{    
              
if(this.ownerDocument.selectSingleNode)
              
{
                 
return this.ownerDocument.selectSingleNode(cXPathString, this);
              }

              
else{throw "For XML Elements Only";}
           }

        }

    }

    window.onload
=function()
    
{        
        initProvince();
        initXmlProvince();
    }

    
</script>
    
</head>

<body>
<font color=\"#008000\">兼容firefox和IE的两级联动下拉菜单的javascript代码</font><p>
<font color="#0000ff"><div  id="time"></div></font><p>
=========JAVASCRIPT===============
<p>
<select  size="1" id="Province" onchange="showCity()"></select><select  size="1" id="City"></select>
<p>
=========读取XML字符串===============
<p>
<select size="1" id="xmlProvince" onchange="showXmlCity()"></select><select size="1" id="xmlCity"></select>

</body>

</html>

 

演示:http://long.51aspnet.net/Tree/firefoxIEDrowp.htm

posted @ 2008-01-16 15:50  龍的傳人  阅读(446)  评论(0编辑  收藏  举报