Asp.net实现下拉框和列表框的连动

简介:         走过了牛腩老师的新闻发布系统,漫游过了孙鑫老师的Html,在427沐浴第一缕冬日阳光的美丽月底,小编迎来了北大青鸟的Asp.net,北大青鸟,高大上的赶脚有么有,哈哈哈,开始了小编的.net之旅。

        走过了牛腩老师的新闻发布系统,漫游过了孙鑫老师的Html,在427沐浴第一缕冬日阳光的美丽月底,小编迎来了北大青鸟的Asp.net,北大青鸟,高大上的赶脚有么有,哈哈哈,开始了小编的.net之旅。

        首先,小编来简单介绍一下Asp.net,她是.NET FrameWork的一部分,是一项微软公司的技术,是一种使嵌入网页中的脚本可由因特网服务器执行的服务器端脚本技术,它可以在通过HTTP请求文档时再在Web服务器上动态创建它们。 指 Active Server Pages(动态服务器页面) ,运行于 IIS(Internet Information Server 服务,是Windows开发的Web服务器)之中的程序。该博文小编主要带领小伙伴们学习一个例子,利用Asp.net实现下拉框和列表框的连动,以及小编在这个过程中遇到的问题,记录一下小编的学习过程。

          首先,我们需要创建一个数据库:

          

<span style="font-size:18px;">create database department   --创建数据库

use department

create table TDepartment   --穿件TDepartment表
(
 depID int primary key,
 deName varchar(30) not null
)
insert into TDepartment values(1,'教务')
insert into TDepartment values(2,'后勤服务中心')
insert into TDepartment values(3,'办公室')


create table emp   --创建emp表
(
 empID int primary key,
 empName varchar(30) not null,
 depID int foreign key references TDepartment(depID)
 
)
insert into emp values(1,'王小刚',1)
insert into emp values(2,'李刚',1)
insert into emp values(3,'张红',2)
insert into emp values(4,'张波',3)


</span>
       接着,打开VS,我们新建一个项目,如下图所示:

       

       接着,编写代码,我们需要连接数据库,代码编写如下:

       

<span style="font-size:18px;">/**********************************************
'文 件 名: DBCon
'内    容:连接数据库
'功    能:连接数据库
'作    者:丁国华
'生成日期: 2014年11月28日 14:59:45
'版本号:V2.0
'**********************************************/
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Data.SqlClient;

namespace departMent
{
    public class DBCon
    {
        public DBCon()
        {

        }
            public static SqlConnection createConnection()
           {
                //连接数据库
                SqlConnection con = new SqlConnection("server=(local);database=department;uid=sa;pwd=123456;");   
                return con;
            }

    }


}</span>
        紧接着,我们来编写Web的代码,如下:

      

<span style="font-size:18px;">/**********************************************
'文 件 名: WebForm1
'内    容:实现下拉框和列表框的连动
'功    能:实现下拉框和列表框的连动
'作    者:丁国华
'生成日期: 2014年11月28日 15:05:45
'版本号:V2.0
'**********************************************/
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.SqlClient;
namespace departMent
{
    public partial class WebForm1 : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            if(!this.IsPostBack)
            {
                
                SqlConnection con = DBCon.createConnection();
                con.Open();
                //显示部门
                SqlCommand cmd = new SqlCommand("select * from TDepartment",con);
                SqlDataReader sdr = cmd.ExecuteReader();
                this.ddlDep.DataSource = sdr;
                this.ddlDep.DataTextField = "deName";
                this.ddlDep.DataValueField= "depID";
                this.ddlDep.DataBind();
     
                sdr.Close();
                //显示员工
                SqlCommand cmdEmp = new SqlCommand("select * from emp where depID="+this.ddlDep.SelectedValue ,con);
                SqlDataReader sdrEmp = cmdEmp.ExecuteReader();
                while(sdrEmp.Read())
                {
                    this.lBoxEmp.Items.Add(new ListItem(sdrEmp.GetString(1),sdrEmp.GetInt32(0).ToString()));

                }
                sdrEmp.Close();
     
                //关闭连接
                con.Close();
            }
        }

        protected void ddlDep_SelectedIndexChanged(object sender, EventArgs e)
        {
            this.lBoxEmp.Items.Clear();
            SqlConnection con = new SqlConnection("server=(local);database=department;uid=sa;pwd=123456;");
            con.Open();
            //显示员工
            SqlCommand cmdEmp = new SqlCommand("select * from emp where depID=" + this.ddlDep.SelectedValue,con);
            SqlDataReader sdrEmp = cmdEmp.ExecuteReader();
            while (sdrEmp.Read())
            {
                this.lBoxEmp.Items.Add(new ListItem(sdrEmp.GetString(1), sdrEmp.GetInt32(0).ToString()));

            }
            sdrEmp.Close();

            //关闭连接
            con.Close();
        }
    }
}</span>
           Ctrl+F5运行,咳咳咳,满怀期待,期待运行效果会是什么样子的nie,啊哦,出错了,如下所示:

           

          这个错是为神马nie,再此小编来讲解一下解决方案,以Win8为例:

          第一步:进入控制面板:

          

         第二步:选择程序选项:

         

         第三步:选择程序和功能:

         

         第四步:启用和关闭Windows功能:

         

         第五步:勾选Internet Information Services可承载的Web核心:

         
        最后点击“确定”等待更改完成。然后重启电脑,设置完成,我们再来运行,效果如下:

        

        点击相应的下拉框,列表框会随之变化,但是这种连动不提倡使用,在用户连接少的时候可以使用,如果大量的用户连接,会对数据库造成很大的负担。

        小编寄语:该博文,小编主要讲解了Asp.net方面的知识,第一次接触,小宇宙顿时爆发了`(*∩_∩*)′,小编主要敲了一个例子,美其名曰利用Asp.net实现下拉框和列表框的连动,以及在敲这个小例子的过程中遇见的困难,希望可以帮助到其他小伙伴,北大青鸟Asp.net未完,待续......        

目录
相关文章
|
Web App开发 前端开发 Java
ASP.NET MVC之下拉框绑定四种方式(十)
前言 上两节我们讲了文件上传的问题,关于这个上传的问题还未结束,我也在花时间做做分割大文件处理以及显示进度的问题,到时完成的话再发表,为了不耽误学习MVC其他内容的计划,我们今天开始好好讲讲关于MVC中下拉框中绑定枚举的几种方式。
1265 0
|
SQL JavaScript 前端开发
下拉框控件dhtmlXCombo在ASP.NET中的使用详解
原文:http://blog.csdn.net/asengine11/article/details/6455267    在ASP.NET项目中经常会用到下拉框控件,但是ASP.NET提供的DropDownList控件不能修改样式,经常会与网站整体风格格格不入。
1154 0
|
Web App开发 JavaScript .NET
asp.net 利用微软数据访问类库结合AjaxPro实现无刷新下拉框级联
1、新建一个web网站,添加如下几个dll引用。具体的dll文件可在如下地址下载:http://download.csdn.net/detail/taomanman/4167764 2、新建一个js文件夹,放jquery-1.4.1-vsdoc.js和jquery-1.4.2.min.js两个js文件。
1297 0
|
JavaScript .NET 前端开发
asp.net frameset里一个frame中获取下拉框、单选框的值并作为参数传递到另一个frame里并显示结果
      最近在一个项目中,由于根据需求,需要增加一个概览页面,也就是最高权限用户可以对全局概况有一个总的了解,下面就来简单介绍下,主要是对于其中实现的部分小技巧做一下总结。
1043 0
|
4月前
|
开发框架 前端开发 JavaScript
ASP.NET MVC 教程
ASP.NET 是一个使用 HTML、CSS、JavaScript 和服务器脚本创建网页和网站的开发框架。
56 7

热门文章

最新文章