TechWeb-技术社区 » 系统设置 » 网页设计 » 从xml中获取城市,省份名称


2008-5-9 16:02 真我不改
从xml中获取城市,省份名称

最近没事,写了个在项目经常要取城市或省份名的方法,所以改成了一个类.方便以后调用
b Uc^0q!dy[*g //*****************************
$d'f@f.o3] //    功能描述:从xml中获取数据
}Eg+L*v*\W7o/zBw"q //    版本编号:owendu V1.1
)L'aSm0t@ q \\pM //    初始创建: 2006.08.27~6IveDs8S8V Fa b
//    最后修改: 2006.10.08Spm3[K^ s
//*                                                                 
2hK;Z)Z;h.Qi`e //*****************************
)H!t P[:xb'd5G
4u)ag q;J
k%u$d'frc a //根据cityid,获取返回cityname   ---------------xmlurl 指的是整个站点的路征
vY[tCu //页面调用方式如下:<script language=javascript>GetCityName("<%=cityid%>","<%=System.Configuration.ConfigurationSettings.AppSettings["LocalSiteURL"]%>")</script>
];B+b8fL function GetCityName(cityid,xmlurl)z8g5s#GOR;Z l.e?L
{
F+a j5kJw:N}       sC @d*HHh!x
     var XmlDoc_city = new ActiveXObject("MSXML2.DOMDocument.3.0");
?*g G9H4@Z;v7G L)xyj        XmlDoc_city.async=false;
XIA M X~ Et        XmlDoc_city.validateOnParse=false;
JK| z3\        var Url=xmlurl+"XmlData/city.xml";
ku?.^AO y:`        XmlDoc_city.load(Url);
7h:sHc#_6` h7z    
'Y9b4?L4Y3P blo   //0_6X-[?y:T
    if (XmlDoc_city.readyState == 4 && XmlDoc_city.xml != "")[ c0fCcA0a
  {
(Q1I"Ha:u4D   
xx z _9_lQ    var city;
0h/A&a$Cw+bzT    var cities = XmlDoc_city.documentElement.selectNodes("city");
f'p1[:C2o|,R'[    
K\*R7X4[3sr    for (var i=0; i < cities.length; i++).L3A wG F i fi T|
   {
B tmeF9\E;|.E(~_%Q     city = cities[i];
n[T;rP"W+x2?^     if (city.getAttribute("cityid") == cityid)%A4A$a{%E&i DM \;[
    {
s$?(ey;Lh:M     o5r1d#naQ
     document.write(city.getAttribute("cityname"));oS;b}2}
     break;s*\/P\/i@L
    }
XZ g JQ.h      //obj2.options[obj2.length] = new Option(city.getAttribute("cityname"),city.getAttribute("cityid"));x(j^ @-P bB
   }
b7S+`9K1[3_K d:j      }(Ms0b%F!c1k
    // elsem%?|YOCU6@ _
    // {9O,kP2tM
        //alert('您的浏览器不支持xml文件读取,于是本页面禁止您的操作,推荐使用IE5.0以上可以解决此问题!');HG/A*RkaD
    // }P_0\sQ;Nv
}
z/G+j8e&Lo,V8D1} J(I%VWb ~F
//根据省份id,获取返回省名   ---------------xmlurl 指的是整个站点的路征 :o7M7Np*ta5S
function GetProviceName(pid,xmlurl);N!zV _S K
{
s(IS l$|(y'a ZvY X,]      ]o yx ?
    var XmlDoc_city = new ActiveXObject("MSXML2.DOMDocument.3.0");
!Q"A!~~!b     XmlDoc_city.async=false;8RT!Q#M9H {|)H
    XmlDoc_city.validateOnParse=false;
9Jkl0gxw(vT I     var Url=xmlurl+"XmlData/province.xml";
Wgt I-x5M/_c'P's     XmlDoc_city.load(Url);   
O5agcSD sg     if(XmlDoc_city.readyState == 4 && XmlDoc_city.xml != "")D OaBZ,z3k#P
{
wQ:@4f!Z/uH }   var city;%x?X}_2s9W
  var cities = XmlDoc_city.documentElement.selectNodes("province");O2tI$V{ S u
  
y~8nO1J(`Zx   for (var i=0; i < cities.length; i++)
M [vA9M8x1W   {
*I8W y t3f.y    city = cities[i];V3jHO;C [vr'_
   if (city.getAttribute("provinceid") == pid)u.Kv8aFX
   {   
w-q0e(iSN     document.write(city.getAttribute("provincename"));
:{R[(M.YK-U|(I     break;1h8DF m%\ i
   }     5vYW8vMH&a7y
  }
aS0Fn$_*v7A&S%b }
c Vz2l,n6h8f)I }0d'| I)BB/m0s

D V0Hn}r0Z5} //根据地区districtid,获取返回地区名   ---------------xmlurl 指的是整个站点的路征 1cdxx.It,C
function GetProviceName(districtid,xmlurl)!s8WP0lm9g,v.V
{
B[;c6@)L-fA8J      
ypwj2z"v     var XmlDoc_city = new ActiveXObject("MSXML2.DOMDocument.3.0");u n,q)uB G/a@(S]
    XmlDoc_city.async=false;
S b*p;?)wTj{     XmlDoc_city.validateOnParse=false;
*@"b$K,P*S?     var Url=xmlurl+"XmlData/district.xml";
w*~ Y;xVgh     XmlDoc_city.load(Url);   
#NIk mlk n)T     if(XmlDoc_city.readyState == 4 && XmlDoc_city.xml != "")0} n's%yb'@5GA
{
V"tX ~&^E8D   var city;Z7~ d%I Z6G%K:S
  var cities = XmlDoc_city.documentElement.selectNodes("district");
Sa^a!coa!QJ   
#bJM2X:RvA(D8N P   for (var i=0; i < cities.length; i++)K'o-H*u/~,Vb6W eU
  {)N:K S c g ]
   city = cities[i];4cL`$X-t!~4e8d w
   if (city.getAttribute("districtid") == pid)
w7q%c/Y;NL4oP"|    {   
O6`!}m1zwgr     document.write(city.getAttribute("districtname"));e boV{ nA8s;]6G
    break;I@{$]9p7M
   }     _X'|kIc4T)p| g
  }
5{ [psY|/iY }
3]K)~-J7yyQ }
y{A4HO@ H^#r c-w b0j5Z8ZS'P
//根据省份id,城市id,地区(县)id,获取返回省城市名地区名   ---------------xmlurl 指的是整个站点的路征 .PU&Z*wvd,u
function GetName(pid,cityid,districtid ,xmlurl)SH.}"B2^r7E K
{6Nt q7|)}bfF4j5m Ue
   var cityname="";\'gR$_,B
   var provicename="";
}c tcwh/W.oj-G;w    var districtname="";y;D0DwZW
    //7|Mb9m2P f-|3A_t
    +A}ML$O0w1Q"I
    var XmlDoc_p = new ActiveXObject("MSXML2.DOMDocument.3.0");
r`&ETe/d| ?     XmlDoc_p.async=false;
Jj E;C7I`     XmlDoc_p.validateOnParse=false;
P*ycA [u`~7x9w     var UrlProvice=xmlurl+"XmlData/province.xml";
'b#k|.~h     XmlDoc_p.load(UrlProvice);   
)ru-T^DN     //#q'pL&k{`
     p,^_OP0sF2R
    var XmlDoc_city = new ActiveXObject("MSXML2.DOMDocument.3.0");
Y+gE ?}%Z]!S     XmlDoc_city.async=false;c*mad,{3s'M`%v
    XmlDoc_city.validateOnParse=false;
-@{9k$WHO N     var Urlcity=xmlurl+"XmlData/city.xml";6Z)mDTT*B;j
    XmlDoc_city.load(Urlcity);   
2x Vj{+hr    
IA7O6@&TFF(wU     // s7jf?~3]3W[
    var XmlDoc_district = new ActiveXObject("MSXML2.DOMDocument.3.0");:r F4O*\Bj%Eo`
    XmlDoc_district.async=false;0kIk Y)A0X
    XmlDoc_district.validateOnParse=false;
*UME5fN5Q     var Urldis=xmlurl+"XmlData/district.xml";
*oD b t%{(q.d-pbQ     XmlDoc_district.load(Urldis);   +^"~XL:@&d B*q/F
    //
z Aa_ Ol] g;I     if(XmlDoc_p.readyState == 4 && XmlDoc_p.xml != "")N&W#U u*r'}
{ .u_ GGJ!a"l;y
  var provice;$rpy+AI4y]3I4pi\
  var provices = XmlDoc_city.documentElement.selectNodes("province");
U?+W)nok&Jr    A5iMs]7umG
  for (var i=0; i < provices.length; i++)
K5K(C)f7KQ {'Z   {
g YLR'B!k\7`    provice = provices[i];D:^c#J+?IVB
   if (provice.getAttribute("provinceid") == pid)Km+H6R2Rk3D5W,e)k`h(h
   {   (l;g| |3n.~D
      provicename=provice.getAttribute("provincename");3l8@Sq{
    break;MB#k$q!TC3h
   }      M*I"E ]cDLu8d-}
  }
^P^wXD y@ Q }Y"[VeF"a

x]${g,WUV2vT)s)Y   if(XmlDoc_city.readyState == 4 && XmlDoc_city.xml != "")
ZI2^G7b0_ {
'p ?;`k5T }+|/^   var city;'D(\aNx6VGKK
  var citys = XmlDoc_city.documentElement.selectNodes("city");
X)Ib7Y-F |S   6mM"I2Ex)Dq
  for (var i=0; i < citys.length; i++)5u[BoU8\:u!pG9PO(s0Z
  {8n;^u5wk5s X ^'Lj
   city = citys[i];
C%{y;?$SV@    if (city.getAttribute("cityid") == cityid)/ln2H"h/M7m6d+R
   {   
U5{5nb5t UM3Q       cityname=city.getAttribute("cityname");
;I[)c2P&hEF     break;'mCvu xb%R Q
   }     Jst3G)a9aT$f
  }
hi)t7w#EkH }
{6Z"].qZ
Lh)Cu0J!W4CA$i   if(XmlDoc_district.readyState == 4 && XmlDoc_district.xml != "")
OuA,P EJ[S I J { .I{ sp2Hm+s
  var district;
$PO#h!P:{   var districts = XmlDoc_district.documentElement.selectNodes("district");
r4b(u~M0i(?$p   %gj7P6_ p,_l*t
  for (var i=0; i < districts.length; i++)
-Cw3x"n3`   {Dm8`_-BRB
   district = districts[i];
/AZ wU1E]0r    if (district.getAttribute("districtid") == districtid)
h.`HK0r-r IM&j    {   /Z4f5_oT5q|Y
      districtname=district.getAttribute("districtname");
J/}7T(W'M1c5Y&JZ     break;
k,I)In0?4M{9`s3z    }     
/Yv r:C7BR,^y(p*KH   }
.A%]*o.Ad"h4d }L(DBgnN)D }
var name=provicename+" "+cityname+" "+ districtname;
^F2{u N+[F document.write(name);/Ut6\gL&m$U|7j;L1G
  
H)\ew ~4J F }

2008-5-11 19:16 水妖
很实用的YY 感谢了

页: [1]


Powered by Discuz! Archiver 5.5.0  © 2001-2006 Comsenz Inc.