天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

JavaScript XML實現兩級級聯下拉列表

1.創建測試XML文件:select.xml
復制代碼 代碼如下:
<?xml version="1.0" encoding="GBK"?>
<select>
<province id="sx">
陜西
<city id="xa">西安</city>
<city id="bj">寶雞</city>
<city id="ak">安康</city>
</province>
<province id="js">
江蘇
<city id="nj">南京</city>
<city id="xz">徐州</city>
</province>
<province id="sh">
上海
</province>
</select>

2.創建HTML頁面:select.html
復制代碼 代碼如下:
<body>
</body>
<script>...
/**//**
* @description 二級級聯下拉
* @author BluesLee
* @lastModif BluesLee
* @createDate 2007-10-13
* @modifDate 2007-10-15
* @version 1.0
*/
SelectLevel.prototype.xml;
SelectLevel.prototype.provinces;
SelectLevel.prototype.parentName="province";//父節點名稱
SelectLevel.prototype.childName="city";//子節點名稱
SelectLevel.prototype.keyName="id";//屬性
/**//**
* 對象SelectLevel的構造器
* @author BluesLee
* @lastModif BluesLee
* @createDate 2007-10-13
* @modifDate 2007-10-15
* @version 1.0
*/
function SelectLevel(parentName,childName,keyName)...{
if(parentName!=null && parentName!="")...{
this.parentName=parentName;
}
if(childName!=null && childName!="")...{
this.childName=childName;
}
if(keyName!=null && keyName!="")...{
this.keyName=keyName;
}
}
/**//**
* 加載xml文件
* @author BluesLee
* @lastModif BluesLee
* @createDate 2007-10-13
* @modifDate 2007-10-15
* @version 1.0
*/
SelectLevel.prototype.readXML=function(url)...{
var selectXML;
//如果它受支持,采用標準的2級DOM技術
if(document.implementation && document.implementation.createDocument)...{
//創建新的Document對象
selectXML=document.implementation.createDocument("","",null);
//設置裝載完畢時觸發事件
selectXML.onload=function()...{
alert("加載完成");
}
selectXML.load(url);
}else...{//IE瀏覽器創建Document對象
selectXML=new ActiveXObject("Microsoft.XMLDOM");
//設置onload
selectXML.onreadystatechange=function()...{
if(selectXML.readyState==4)...{
alert("加載完成");
}
}
selectXML.load(url);
}
this.xml=selectXML;
}
/**//**
* 遍歷xml
* @author BluesLee
* @lastModif BluesLee
* @createDate 2007-10-13
* @modifDate 2007-10-15
* @version 1.0
*/
SelectLevel.prototype.iteratorXML=function(node,level)...{
var n=node;
if(n==null)...{
n=this.xml.documentElement;
}
if(level==null)...{
level=0;
}
if(n.nodeType==3)...{
for(var i=0;i<level;i++)...{
document.write("-");
}
document.write(n.data.trim()+"<br>");
}else...{
for(var m=n.firstChild;m!=null;m=m.nextSibling)...{
this.iteratorXML(m,level+1);
}
}
}
/**//**
* 下拉聯動
* @author BluesLee
* @lastModif BluesLee
* @createDate 2007-10-13
* @modifDate 2007-10-15
* @version 1.0
*/
SelectLevel.prototype.changeSelect=function()...{
var city=document.getElementById(this.childName);
var province=document.getElementById(this.parentName);
city.options.length=0;
if(province.value==null || province.value=="")...{
city.options.length=1;
city.options[0].text="請選擇…";
return;
}
var citys=this.provinces[this[province.value]].getElementsByTagName(this.childName);
if(citys.length==0)...{
city.options.length=city.options.length+1;
city.options[city.options.length-1].value=province.value;
for(var i=0;i<province.options.length;i++)...{
if(province.options[i].selected)...{
city.options[city.options.length-1].text=province.options[i].text;
return;
}
}
return;
}
city.options.length=citys.length;
for(var i=0;i<citys.length;i++)...{
city.options[i].value=citys[i].getAttribute(this.keyName);
city.options[i].text=citys[i].firstChild.data.trim();
}
}
/**//**
* 初始化下拉列表
* @author BluesLee
* @lastModif BluesLee
* @createDate 2007-10-13
* @modifDate 2007-10-15
* @version 1.0
*/
SelectLevel.prototype.init=function(parent,province,city)...{
this.provinces=this.xml.getElementsByTagName(this.parentName);
var selectProvince=document.createElement("select");
var selectCity=document.createElement("select");
var obj=this;
selectProvince.setAttribute("name",this.parentName);
selectProvince.setAttribute("id",this.parentName);
selectProvince.attachEvent("onchange",function()...{obj.changeSelect();});
selectProvince.options.length=this.provinces.length+1;
selectProvince.options[0].text="請選擇…";
selectCity.setAttribute("name",this.childName);
selectCity.setAttribute("id",this.childName);
selectCity.options.length=1;
selectCity.options[0].text="請選擇…";
for(var i=0;i<this.provinces.length;i++)...{
SelectLevel.prototype[this.provinces[i].getAttribute(this.keyName)]=i;
selectProvince.options[i+1].value=this.provinces[i].getAttribute(this.keyName);
selectProvince.options[i+1].text=this.provinces[i].firstChild.data.trim();
if(this.provinces[i].getAttribute(this.keyName)==province)...{
selectProvince.options[i+1].selected=true;
var citys=this.provinces[i].getElementsByTagName(this.childName);
selectCity.options.length=citys.length+1;
for(var j=0;j<citys.length;j++)...{
selectCity.options[j+1].value=citys[j].getAttribute(this.keyName);
selectCity.options[j+1].text=citys[j].firstChild.data.trim();
if(citys[j].getAttribute(this.keyName)==city)...{
selectCity.options[j+1].selected=true;
}
}
}
}
parent.appendChild(selectProvince);
parent.appendChild(selectCity);
}
String.prototype.trim=function()...{
return this.replace(/^s*/g,"").replace(/s*$/g,"");
}
//測試
var newXML=new SelectLevel();
newXML.readXML("select.xml");
//newXML.iteratorXML(null,-2);
newXML.init(document.body,"sx","bj");
</script>

JavaScript技術JavaScript XML實現兩級級聯下拉列表,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 超清无码波多野吉衣与黑人 | 男女夜晚在爽视频免费观看 | 国产成人小视频在线观看 | 一本道高清码v京东热 | 久草网国产自偷拍 | 色老汉网址导航 | 97超碰97资源在线观看 | 伦理79电影网在线观看 | 国产精品人妻午夜福利 | 91欧洲在线视精品在亚洲 | 丰满五十六十老熟女HD60 | 国产精品96久久久久久AV网址 | 中文字幕亚洲无线码在线 | 中文无码在线观 | 日韩av片无码一区二区不卡电影 | 妙玉被肉干高H潮文 | TIMI1TV天美传媒在线观看 | 精品一区二区三区高清免费观看 | 在线中文字幕视频 | 16女下面流水不遮图免费观看 | 一本道mw高清码二区三区 | 永久免费看A片无码网站四虎 | 日夜啪啪一区二区三区 | a级精品九九九大片免费看 A级韩国乱理伦片在线观看 | 超碰97免费人妻 | 最近在线视频观看2018免费 | 麻豆免费观看高清完整视频在线 | 试看做受120秒免费午夜剧场 | 蜜芽亚洲欧美一区二区电影 | 国产在线精品亚洲二品区 | 国产午夜亚洲精品理论片八戒 | 久久精品国产男包 | 无码国产成人777爽死 | 忘忧草日本在线WWW日本 | 亚洲成人欧美 | 国产成人自拍视频在线观看 | 新影音先锋男人色资源网 | 有人在线观看的视频吗免费 | 久久精品国产男包 | 亚洲 欧美 制服 视频二区 | 久久人人爽人人片AV人成 |