兼容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 = [];
for( var 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>
<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 = [];
for( var 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