JAVAScript 实现的城市联动菜单


<script>
/*
 作者:fibona(熊祥众)
 写作日期:2005年12月
 实现功能;实现一个静态的城市与省区选择的联动菜单
 这主要讲述的是一个联动选择的实现原理,可以通过此原理实现动态的联动选择
*/
</script>


<script language="JavaScript">

function validate(theform)
{

//alert(document.all.city.value);

if (document.all.city.value == "")
{
        alert("城市值非空");
        return false;
}else{
return true;
}
}
</script>
<form method="post" name="form1" action="#" enctype="multipart/form-data" onSubmit="return validate(this)">
<tr>
<td bgcolor="#F8F8F8" width="20%">选择城市:</td>
<td bgcolor="#FFFFFF"><select name="city"onChange=changelocation(this.value)>
  <option value="" selected>>>>>请选择<<<<</option>
  <OPTION value='1' >北京</OPTION><OPTION value='2' >上海</OPTION><OPTION value='3' >湖南 </OPTION>
  </select></td>
</tr>
<tr>
<td bgcolor="#F8F8F8" width="20%">选择市或者城区:</td>
<td bgcolor="#FFFFFF">  <select name="area">
 <SCRIPT language=JavaScript>
 var onecount;
 onecount=0;
 subcat = new Array();
 subcat[0] = new Array(1,'东城');
 subcat[1] = new Array(1,'西城');
 subcat[2] = new Array(1,'丰台');
 subcat[3] = new Array(1,'海淀');
 subcat[4] = new Array(1,'通州');
 subcat[5] = new Array(1,'其它区');
 subcat[6] = new Array(2,'奉贤');
 subcat[7] = new Array(2,'南汇');
 subcat[8] = new Array(2,'青浦');
 subcat[9] = new Array(2,'松江');
 subcat[10] = new Array(2,'徐汇');
 subcat[11] = new Array(2,'浦东');
 subcat[12] = new Array(3,'长沙');
 subcat[13] = new Array(3,'永州');
 subcat[14] = new Array(3,'衡阳');
 onecount=15;
 function changelocation(locationid)
 {  
  
  document.all.area.length = 0;
  var locationid=locationid;
  var i,flag=0;
  for (i=0;i < onecount; i++)
  {
  if (subcat[i][0] == locationid)
  {
  document.all.area.options[document.all.area.length] = new Option(subcat[i][1]);
  flag=1;
  }
  }
  if (flag==0)
  {document.all.options.options[document.all.area.length] = new Option('>>>>选择市或者区<<<<');
  }
 }</SCRIPT>
  <option value="" selected>>>>>选择市或者区<<<<</option>
  </select></td>
</tr>
<input type="submit" name="topicsubmit" value="提交" tabindex="5">
</form>

版本:v1.2 ----------------------------------------------- (C) Oran Day(likecode#gmail.com) ----------------------------------------------- ----------------------------------------------- 文件夹说明: - ChinaRegions_Complained 已编译后的dll - ChinaRegions_Source - 服务器控件源码项目 - html - 演示代码级源测试代码 ----------------------------------------------- ----------------------------------------------- ChinaRegion 文件名:OranChinaRegion.dll 自我说明XML:OranChinaRegion.XML 描述: 中国行政区域二级联系菜单,根据上级行政区加载下级行政区列表 XML数据驱动,可自定义添加、删除,简易更新 支持回发恢复状态,已正确设定行政区可自动选定和加载各级行政区数据 其它说明: 应用网站必须存在行政区域的数据XML文件,默认放于应用页面同级目录的oran/regions下,其中regions.xml为一级行政区数据,其它均为二级行政区数据 可自定义修改XML目录,在web.config/appSettings/ChinaRegionXmlFolderPath 配置,e.g.:/oran/regions 创建实例至少指定 runat 和 ID 属性。 应用: 1.为网站添加DLL引用 引用OranChinaRegion.dll 2.复制XML文件至网站 3.注册控件 e.g.: 4.在您期望的位置插入该控件, e.g.: 5.获取值 ParentRegion 获取或设置一级行政区 ChildRegion 获取或设置二级行政区 e.g: string parRgn = region1.ParentRegion; if (parRgn.Length > 0) Response.Write("您选择的是:" + parRgn); string chdRgn = region1.ChildRegion; if (chdRgn.Length > 0) Response.Write(" - " + chdRgn); 6.减少网络传输量,提高网络传输效率,您可以将XML压缩再应用于实际网站。 7.更多参数请参考自我说明XML。 8.期待您报告BUG:)。 -----------------------------------------------
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值