最近正在做一个分类信息的程序,正做到实现无刷新三级联动的问题,从网上查了不少方法,最后使用选择了xmlhttp方法实现,并对代码进行了多次改进,现提供给大家参考。此为ListBox控件示例,DropDownList只需将控件名改一下就可以了。
数据库结构为
id 自动编号
oneid 数值型 一级分类id
twoid 数值型 二级分类id
threeid 数值型 三级分类id
sort 数值型 排序
classname 字符型 分类名称

数据库下载
/Files/netshuai/class.rar

aspx页面javascript代码
asp.net实现ListBox、DropDownList无刷新三级联动(xmlhttp)<script type="text/javascript">
asp.net实现ListBox、DropDownList无刷新三级联动(xmlhttp)
<!--
asp.net实现ListBox、DropDownList无刷新三级联动(xmlhttp)    
function XmlPost(str)
>

aspx页面控件代码
asp.net实现ListBox、DropDownList无刷新三级联动(xmlhttp)<asp:ListBox ID="Lbx_ClassOne" runat="server" Height="300px" Width="150px"></asp:ListBox>
asp.net实现ListBox、DropDownList无刷新三级联动(xmlhttp)
<asp:ListBox ID="Lbx_ClassTwo" runat="server" Height="300px" Width="150px"></asp:ListBox>
asp.net实现ListBox、DropDownList无刷新三级联动(xmlhttp)
<asp:ListBox ID="Lbx_ClassThree" runat="server" Height="300px" Width="150px" ></asp:ListBox>
asp.net实现ListBox、DropDownList无刷新三级联动(xmlhttp)        

cs页面代码
asp.net实现ListBox、DropDownList无刷新三级联动(xmlhttp)    protected void Page_Load(object sender, EventArgs e)
        OleDbConnection cnn = new OleDbConnection(ConnectionString);
        cnn.Open();
        OleDbCommand cmd=new OleDbCommand(sql, cnn);
        OleDbDataReader dr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
            Lbx_ClassOne.DataSource 
= dr;
asp.net实现ListBox、DropDownList无刷新三级联动(xmlhttp)
        Lbx_ClassOne.DataTextField = "classname";
asp.net实现ListBox、DropDownList无刷新三级联动(xmlhttp)        Lbx_ClassOne.DataValueField 
= "oneid";
asp.net实现ListBox、DropDownList无刷新三级联动(xmlhttp)        Lbx_ClassOne.DataBind();
asp.net实现ListBox、DropDownList无刷新三级联动(xmlhttp)    }

asp.net实现ListBox、DropDownList无刷新三级联动(xmlhttp)
asp.net实现ListBox、DropDownList无刷新三级联动(xmlhttp)    
private void Lbx_Class_Bind(string oneid, string twoid)
        OleDbConnection cnn = new OleDbConnection(ConnectionString);
        cnn.Open();
        OleDbCommand cmd=new OleDbCommand(sql, cnn);
        OleDbDataReader dr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
asp.net实现ListBox、DropDownList无刷新三级联动(xmlhttp)     

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

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

相关文章: