两级联动的select XML版

select|xml

   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" :
   oList=document.getElementsByName(Na

时间: 2024-12-02 11:29:21

两级联动的select XML版的相关文章

DropDownList绑定数据表实现两级联动示例

 这篇文章主要介绍了DropDownList绑定数据表实现两级联动具体实现,需要的朋友可以参考下 场景一:平时我们在DropDownList控件下添加下拉选项时,都会使用它的Item.Add方法,直接在代码下添加.如果我们想添加或修改下拉选项,则必须去修改源代码.如果几个DropDownList控件的下拉选项相同,我们则需要重复添加好多次,后期的维护工作很不方便.    场景二:我们在12306网站买票时,肯定遇到过这么一种情景:我们需要先选定目的地的省份,选完省份后在城市选框中会自动加载该省份

DropDownList绑定数据表实现两级联动示例_实用技巧

场景一:平时我们在DropDownList控件下添加下拉选项时,都会使用它的Item.Add方法,直接在代码下添加.如果我们想添加或修改下拉选项,则必须去修改源代码.如果几个DropDownList控件的下拉选项相同,我们则需要重复添加好多次,后期的维护工作很不方便. 场景二:我们在12306网站买票时,肯定遇到过这么一种情景:我们需要先选定目的地的省份,选完省份后在城市选框中会自动加载该省份的城市,实现两级联动. 针对以上两个场景,我们可以用DropDownList直接绑定数据表,根据选择的省

jQuery 中国省市两级联动选择附图_jquery

复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>省市两级联动选择&l

两级联动select刷新后其值保持不变的实现方法_php技巧

背景 还是学院和专业的关系,我需要保持点击提交按钮后,页面select中继续维持提交前的值 网上有几种办法,要么通过url跳转时候附带参数形式传回页面,或者提交时候讲select的值保存在cookie中,提交后再把cookie中的值填回select中. 我是按照保存在cookie中的方法实现刷新后select值不变,对select设置一个onchange事件 复制代码 代码如下: <script type="text/javascript"> window.onload =

利用xmlhttp实现的两级联动的dropdownlist

xml 在用户注册的时候需要根据不同的用户类型,重数据库中筛选出不同的产品提供给用户.想想,效果最好的只能是无刷新的方法了. 前台脚步:(js) function fillProduction() {    var dwl = document.all("DropdownlistLevel");    var htp = new ActiveXObject("microsoft.xmlhttp");    var url = "reg.aspx?fp=&q

comboBox两级联动,数据从数据库中取出来,第二级数据死活加载不进store,求帮助

问题描述 数据加载的时候,城市的下拉菜单能出来,选择了城市之后想要选择地区,地区的placestore就一直是空的.困扰了好久,求解决.var citystore=new Ext.data.Store({proxy:new Ext.data.HttpProxy({url:'city_query.action'}),reader:new Ext.data.JsonReader({totalProperty:'total',root:'cityList'},[ {name:'id'}, {name:

JavaScript XML实现两级级联下拉列表_javascript技巧

1.创建测试XML文件:select.xml 复制代码 代码如下: <?xml version="1.0" encoding="GBK"?> <select> <province id="sx"> 陕西 <city id="xa">西安</city> <city id="bj">宝鸡</city> <city id=&

JS实现的5级联动Select下拉选择框实例_javascript技巧

本文实例讲述了JS实现的5级联动Select下拉选择框.分享给大家供大家参考.具体如下: 这是一个基于JS的5级联动Select下拉选择框,这里演示的仅是一个示例,没有做汉化,当初从老外网站扒下时花了很多时间,当然我们平时用时候可能不需要这么多级,意在介绍一种编写方法和思路,希望大家喜欢. 运行效果截图如下: 在线演示地址如下: http://demo.jb51.net/js/2015/js-select-5-option-codes/ 具体代码如下: <title>一个基于JS的5级联动Se

《逻辑与计算机设计基础(原书第5版)》——2.4 两级电路的优化

2.4 两级电路的优化 用于实现布尔函数的逻辑电路的复杂度直接取决于实现该函数的代数表达式的形式.虽然函数的真值表是唯一的,但当用代数表达式表达时,函数却可以有许多不同的形式.布尔表达式可以通过代数运算来化简,如2.2节所讨论的那样.然而,化简过程并不是那么容易,因为在化简的过程中没有任何规则能告诉你下一步应该怎样做,而且也很难判断现在是否已经化简到了最简单的形式.与此相反,用画图来对不多于4个变量的布尔函数进行化简却是一种直截了当的方法.对五变量和六变量也可以使用画图的方法,但使用起来有点麻烦