当前位置: 首页 > 图文教程 > 网络编程 > ASP > 两级联动的select XML版

ASP
开辟一条自由ASP快车道
用XML结合数据库,给服务器减负。
纯编码实现数据库的建立或压缩
多个表单和多个图片一起上传完美解决方案
列表项可上下移动的Multiple列表
模拟QQ的下拉列表选择图象
利用FSO取得BMP,JPG,PNG,GIF文件信息(大小,宽、高等)
二级域名原理以及程序,申请即可开通.
利用ASP+XML架设在线考试系统
ASP项目中的通用条件查询模块
一个为字符串中的网址加上链接的程序例子
用Agent+ASP技术制作语音聊天室
多表单域无组件文件上传的例子
使用xmlhttp为网站增加股市行情查询功能
用ASP开发WEB日期选择器
javascript+HTML仿造VB里的MonthView控件
使用xmlHttp结合ASP,实现网页的异步调用
调用DirectX的组件实现的时钟
在ASP页里面注册DLL的VBScript CLASS
ASP程序界面的多语言支持

ASP 中的 两级联动的select XML版


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 170 ::
收藏到网摘: n/a

       XML文件
  
  
  js文件
  var MarketXMLDoc = new ActiveXObject("Msxml2.DOMDocument");
  MarketXMLDoc.async = false;
  MarketXMLDoc.load("/XML/MARKET_LIST.XML");
  function GetMarketList(Type)
  {
  var Nodes;
  switch (Type)
  {
   case "AllCitys" :
   Nodes=MarketXMLDoc.getElementsByTagName("City");
   break;
   case "AllMarkets" :
   Nodes=MarketXMLDoc.getElementsByTagName("Market");
   break;
   case "TheMarkets" :
   CityId=arguments[arguments.length-1];
   if(CityId!="")
   {
   Nodes=MarketXMLDoc.selectNodes(".//City[@RecordNo='" + CityId + "']//Market");
   }
   else
   {
   Nodes=MarketXMLDoc.selectNodes(".//City//Market");
   }
   break;
   default :
   break;
  }
  return Nodes;
  }
  function ChangeMarkets()
  {
  CityId=event.srcElement.options[event.srcElement.selectedIndex].value;
  GenerateMarketList("TheMarkets","Market","","",CityId)
  }
  function ChangeMarketsEx()
  {
  CityId=event.srcElement.options[event.srcElement.selectedIndex].value;
  GenerateMarketListEx("TheMarkets","_Market","","",CityId)
  }
  function GenerateMarketList(Type,Name,Style,Class)
  {
  var oList,oItem;
  var CityId=arguments[arguments.length-1];
  var Nodes=GetMarketList(Type,CityId);
  if(Nodes.length==0) return;
  switch (Type)
  {
   case "AllCitys" :
   case "AllMarkets" :
   oList=document.createElement("SELECT");
   oList.style.cssText=Style;
   oList.className=Class;
   oList.name=Name;
   oList.id=Name;
   oList.onchange=(Type=="AllCitys"?"ChangeMarkets()":"");
   break;
   case "TheMarkets" :
   oList=document.getElementsByName(Name)[0];
   oList.innerHTML="";
   break;
   default :
   break;
  }
  oItem=document.createElement("OPTION");
  oItem.value="";
  oItem.innerText="-搜索所有-";
  oList.appendChild(oItem);
  for(i=0;i {
   oItem=document.createElement("OPTION");
   oItem.value=Nodes[i].getAttribute("RecordNo");
   oItem.innerText=Nodes[i].getAttribute("Name");
   oList.appendChild(oItem);
  }
  return oList;
  }
  function InputAddress()
  {
  NewValue=event.srcElement.options[event.srcElement.selectedIndex].text
  document.getElementById("Address1").value+=NewValue;
  }
  function GenerateMarketListEx(Type,Name,Style,Class,Callback)
  {
  var oList,oItem;
  var CityId=arguments[arguments.length-1];
  var Nodes=GetMarketList(Type,CityId);
  if(Nodes.length==0) return;
  switch (Type)
  {
   case "AllCitys" :
   case "AllMarkets" :
   oList=document.createElement("SELECT");
   oList.style.cssText=Style;
   oList.className=Class;
   oList.name=Name;
   oList.id=Name;
   oList.onchange=((Type=="AllCitys"?"ChangeMarketsEx();":"")+Callback);
   break;
   case "TheMarkets" :