asp.net实现ListBox、DropDownList无刷新三级联动(xmlhttp)

时间:2010-03-17 16:56:58  来源:第二电脑网  作者:第二电脑网

  第二电脑网导读:结构为   id 自动编号   oneid 数值型 一级分类id   twoid 数值型 二级分类id   threeid 数值型 三级分类id   sort 数值型 排序   classname 字符型 分类名称      数据库下载   /Files/netshuai/class.rar   
  正文:最近正在做一个分类信息的程序,正做到实现无刷新三级联动的问题,从网上查了不少方法,最后使用选择了xmlhttp方法实现,并对代码进行了多次改进,现提供给大家参考。此为ListBox控件示例,DropDownList只需将控件名改一下就可以了。
  数据库结构为
  id 自动编号
  oneid 数值型 一级分类id
  twoid 数值型 二级分类id
  threeid 数值型 三级分类id
  sort 数值型 排序
  classname 字符型 分类名称
  
  数据库下载
  /Files/netshuai/class.rar
  
  ASP/ target=_blank class=infotextkey>aspx页面JavaScript代码
  <script type="text/javascript">
  <!--
   function XmlPost(str)
   {
   var webFileUrl="";
   document.all("<% =Lbx_ClassThree.ClientID %>").length=0;
   if(str==1)
   {
   webFileUrl = "?oneid=" + document.all("<% =Lbx_ClassOne.ClientID %>").value;
   document.all("<% =Lbx_ClassTwo.ClientID %>").length=0;
   }
   else
   {
   webFileUrl = "?oneid=" + document.all("<% =Lbx_ClassOne.ClientID %>").value+"&twoid="+document.all("<% =Lbx_ClassTwo.ClientID %>").value;
   }
  
   var result = "";
   var xmlHttp = new ActiveXObject("MSXML2.XMLHTTP");
   xmlHttp.open("Post", webFileUrl, false);
   xmlHttp.send("");
   result = xmlHttp.responseText;
  
  
   if(result != "")
   {
   var piArray = result.split(",");
   if(str==1)
   {
   for(var i=0;i<piArray.length;i++)
   {
   var ary1 = piArray[i].toString().split("|");
   document.all("<% =Lbx_ClassTwo.ClientID %>").options.add(new Option(ary1[1].toString(),ary1[0].toString()));
  
   }
   }
   else
   {
   for(var i=0;i<piArray.length;i++)
   {
   var ary1 = piArray[i].toString().split("|");
   document.all("<% =Lbx_ClassThree.ClientID %>").options.add(new Option(ary1[1].toString(),ary1[0].toString()));
   }
  
  
   }
   }
  
  
   }
  
  
  
  //-->
  </script>
  aspx页面控件代码
  <asp:ListBox ID="Lbx_ClassOne" runat="server" Height="300px" Width="150px"></asp:ListBox>
  <asp:ListBox ID="Lbx_ClassTwo" runat="server" Height="300px" Width="150px"></asp:ListBox>
  <asp:ListBox ID="Lbx_ClassThree" runat="server" Height="300px" Width="150px" ></asp:ListBox>
  
  cs页面代码
   protected void Page_Load(object sender, EventArgs e)
   {
   string strOneid = "", strTwoid = "";
   if (Request["oneid"] != null && Request["oneid"].ToString() != "")
   {
   strOneid = Request["oneid"].ToString();
  
   }
   "asp.net实现ListBox、DropDownList无刷新三级联动(xmlhttp)"由第二电脑网原创提供,转载请注明:http://www.002pc.com/master/College/Programming/aspnet/13268.html


关键字:

关于《asp.net实现ListBox、DropDownList无刷新三级联动(xmlhttp)》文章的评论

站内搜索: 高级搜索

热门搜索: Windows style 系统 tr IP QQ CPU 安装 function 注册 if td