2014.12.06 ASP.NET 三级联动,添加员工,修改员工
(一)三级联动
要实现的效果:

代码:

MyDBDataContext context = new MyDBDataContext();
protected void Page_Load(object sender, EventArgs e)
{
//IsPostBack当前请求是否第一次打开,只有在第一次打开的时候是false,其它时候都是true
//在每个Load页面写代码之前,都加上这句话
if (!IsPostBack)
{
ShowProd();
ShowBrand();
ShowCar();
}
}
/// <summary>
/// 显示汽车名称
/// </summary>
private void ShowCar()
{
var q = context.Car.Where(p=>p.Brand==DropDownList2.SelectedValue);
//绑定显示
DropDownList3.DataSource = q;
DropDownList3.DataTextField = "Name";
DropDownList3.DataValueField = "Code";
DropDownList3.DataBind();
}
/// <summary>
/// 显示系列名称
/// </summary>
private void ShowBrand()
{
var q = context.Brand.Where(p=>p.Prod_Code==DropDownList1.SelectedValue);
DropDownList2.DataSource = q;
DropDownList2.DataTextField = "Brand_Name";
DropDownList2.DataValueField = "Brand_Code";
DropDownList2.DataBind();
}
/// <summary>
/// 显示厂商名称
/// </summary>
/// <param name="context"></param>
private void ShowProd()
{
var q = context.Productor;
DropDownList1.DataSource = q;
DropDownList1.DataTextField = "Prod_Name";
DropDownList1.DataValueField = "Prod_Code";
DropDownList1.DataBind();
}
/// <summary>
/// 下拉列表厂商改变选择时
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
{
ShowBrand();
ShowCar();
}
/// <summary>
/// 下拉列表系列改变选择时
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void DropDownList2_SelectedIndexChanged(object sender, EventArgs e)
{
ShowCar();
}
三级联动源代码
然后将AutoPostBack属性打为True:
(与WinForm不同,B/S需要提交给服务器,否则每次点击选项网页会重新加载,导致选项无法更改)

(二)添加员工
实现的效果:

输入要添加的人员信息,点击添加按钮,将信息添加到数据库中的Info表中。
public partial class _Default : System.Web.UI.Page
{
MyDBDataContext context = new MyDBDataContext();
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
//显示所有民族
var q = context.Nation;
DropDownList1.DataSource = q;
DropDownList1.DataTextField = "Name";
DropDownList1.DataValueField = "Code";
DropDownList1.DataBind();
}
}
protected void Button1_Click(object sender, EventArgs e)
{
//获取元素
string code = TextBox1.Text;
string name = TextBox2.Text;
bool sex = Convert.ToBoolean(RadioButtonList1.SelectedValue);
string nation = DropDownList1.SelectedValue;
DateTime birthday = Convert.ToDateTime(TextBox3.Text);
//添加
Info data = new Info();
data.Code = code;
data.Name = name;
data.Sex = sex;
data.Nation = nation;
data.Birthday = birthday; context.Info.InsertOnSubmit(data);
context.SubmitChanges(); ClearData();
}
//清空
private void ClearData()
{
TextBox1.Text = "";
TextBox2.Text = "";
RadioButtonList1.SelectedIndex = ;
DropDownList1.SelectedIndex = ;
TextBox3.Text = "";
}
}
添加人员源代码
(三)修改人员信息
要实现的效果:

点击修改:

点击修改按钮后,将更改的数据更新到数据库中。
<body>
<form id="form1" runat="server">
<div>
<table width="100%" border="0" cellspacing="1" cellpadding="5" bgcolor="#000000">
<tr>
<td width="15%" align="center" bgcolor="#336699"><strong>代号</strong></td>
<td width="15%" align="center" bgcolor="#336699"><strong>姓名</strong></td>
<td width="15%" align="center" bgcolor="#336699"><strong>性别</strong></td>
<td width="15%" align="center" bgcolor="#336699"><strong>民族</strong></td>
<td width="15%" align="center" bgcolor="#336699"><strong>生日</strong></td>
<td width="25%" align="center" bgcolor="#336699"><strong>操作</strong></td>
</tr>
<%
MyDBDataContext context = new MyDBDataContext();
var q = context.Info;
foreach(Info data in context.Info)
{
%>
<tr>
<td align="center" bgcolor="#33CCFF"><%=data.Code %></td>
<td align="center" bgcolor="#33CCFF"><%=data.Name %></td>
<td align="center" bgcolor="#33CCFF"><%=data.Sex.Value?"男":"女" %></td>
<td align="center" bgcolor="#33CCFF"><%=data.Nation1.Name %></td>
<td align="center" bgcolor="#33CCFF"><%=data.Birthday.Value.ToString() %></td>
<td align="center" bgcolor="#33CCFF"><a href="edit.aspx?id=<%=data.Code %>">修改</a></td>
</tr>
<%
}
%>
</table>
</div>
</form>
</body>
修改员工信息源代码
public partial class edit : System.Web.UI.Page
{
MyDBDataContext context = new MyDBDataContext();
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
//显示所有民族
var q = context.Nation;
DropDownList1.DataSource = q;
DropDownList1.DataTextField = "Name";
DropDownList1.DataValueField = "Code";
DropDownList1.DataBind();
ShowData();
}
}
protected void Button1_Click(object sender, EventArgs e)
{
//获取元素
string code = TextBox1.Text;
string name = TextBox2.Text;
bool sex = Convert.ToBoolean(RadioButtonList1.SelectedValue);
string nation = DropDownList1.SelectedValue;
DateTime birthday = Convert.ToDateTime(TextBox3.Text);
//添加
var q = context.Info.Where(p => p.Code == code);
Info data = q.First();
data.Code = code;
data.Name = name;
data.Sex = sex;
data.Nation = nation;
data.Birthday = birthday; context.SubmitChanges();
Response.Redirect("Default2.aspx");
} private void ShowData()
{
if (Request["id"] != null)
{
string s = Request["id"].ToString();
var q = context.Info.Where(p=>p.Code==s);
if (q.Count() > )
{
Info data = q.First();
TextBox1.Text = data.Code;
TextBox2.Text = data.Name;
RadioButtonList1.SelectedValue = data.Sex.Value.ToString();
DropDownList1.SelectedValue = data.Nation;
TextBox3.Text = data.Birthday.ToString();
}
}
else
{
Response.Write("没有找到相关信息!<a href='Default2.aspx'>返回</a>");
Response.End();
}
}
}
修改员工编辑页面
2014.12.06 ASP.NET 三级联动,添加员工,修改员工的更多相关文章
- ASP.NET 三级联动
三级联动就是用三个下拉列表框DropDownList,每个里面添加相应的东西,在第一个列表框中选择一个值,第二三个列表框都会根据第一个选择进行相应的变化,在第二个列表框中选择一个值,第三个列表框也会根 ...
- asp.net_MVC_jq三级联动
数据库结构 建立三张表,Association,Team,Player 关系如下: 建立asp.net MVC 3项目,在HomeController.cs中利用Linq to SQL获取数据 首先实 ...
- 2014.12.13 ASP.NET文件上传
一.文件上传:(一)上传到硬盘文件夹1.最简单的上传. [HTML代码] <asp:FileUpload ID="FileUpload1" runat="serve ...
- jQuery Distpicker插件 省市区三级联动 动态赋值修改地址
在获取创建页面数据后需要在编辑页面调取之前提交的数据,在使用这个插件后发现无法动态赋值,查找资料后发现需要先销毁实例,$(’#target’).distpicker(‘destroy’); 第一步 引 ...
- 在ASP.NET MVC中实现一种不同于平常的三级联动、级联方式, 可用于城市、车型选择等多层级联场景
三级或多级联动的场景经常会碰到,比如省.市.区,比如品牌.车系.车型,比如类别的多级联动......我们首先想到的是用三个select来展示,这是最通常的做法.但在另外一些场景中,比如确定搜索条件的时 ...
- Web 1三级联动 下拉框 2添加修改删除 弹框
Web 三级联动 下拉框 using System; using System.Collections.Generic; using System.Linq; using System.Web; u ...
- ASP.NET实现省市区三级联动(局部刷新)
跟前一篇ASP.NET实现年月日三级联动(局部刷新)一样,没什么技术含量,直接上代码 <asp:ScriptManager ID="ScriptManager1" runat ...
- 安卓使用spinner控件和pull解析实现全国省市县的三级联动
实现该功能主要有两个难点: 1.XML文件的Pull解析.由于XML文件的结构较为复杂,所以解析时要注意,划分XML文件的结构,根据结构建立相应的和集合.本例中需要建立三个类和三个对象.三个类分别为, ...
- Ajax 案例之三级联动
每次在博客园网站写博客,格式真的好难搞,还望好心人告知更好的编辑工具.接下来进入正题:三级联动(其效果演示可看我的博文Ajax 学习总结 末尾). 数据表设计(Oracle) 新建数据表 Employ ...
随机推荐
- ubuntuOS
OpenStack icehource for Ubuntu OS 1,网络规划 2,Ntp apt-get install ntp 3,generate secure passwd apt-get ...
- Java面向对象面试案例
- Longge的问题(欧拉,思维)
Longge的问题 Submit Status Practice HYSBZ 2705 Description Longge的数学成绩非常好,并且他非常乐于挑战高难度的数学问题.现在问题来了:给定一 ...
- Swift的初始化方法
我们在深入初始化方法之前,不妨先再想想Swift中的初始化想要达到一种怎样的目的. 其实就是安全.在Objective-C中,init方法是非常不安全的:没有人能保证init只被调用一次,也没有人保证 ...
- vim乱码问题
有的时候使用gvim查看文本文件时,出现乱码,现在来确定下原因. 经过我的查资料,发现gvim里有几个关于编码设置的变量:encoding.fileencoding.fileencodings.ter ...
- IDA strings view 中文字符的显示
具体原理不清楚,在网上找了找,记录下. 第一步:将ida.cfg中cpp866 version的AsciiStringChars注释掉,把full version的AsciiStringChars取消 ...
- 【最大流】【HDU3572】Task Schedule
题意: 有N个事件,M台机器.事件有开始时间,持续时间,要在结束时间之前完成,问是否能完成所有事件? 非自己思考出来的 建图:把每个任务和每一天都看做一个点,添加源点和汇点.源点与每个任务之间连一条边 ...
- 《think in python》学习-10
think in python 10 列表 和字符串相似,列表是值得序列.在列表中,它可以是任何类型,列表中的值成为元素,有时也称为列表项 s = [10,20,30,40] print s #列表也 ...
- oracle 定义数据完整性
1. 定义主键约束 1.1 在创建表时定义主键约束 create table student(name varchar2(8),studentid varchar2(10) primary key,s ...
- codevs1304 拓扑序计数
题目描述 Description 求一颗有根树/树形图的拓扑序个数. 输入描述 Input Description ...