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 ...
随机推荐
- POJ 3368 RMQ-ST
一直感觉RMQ水,没自己写过,今天写了一道题,算是完全独立写的,这感觉好久没有了... 一直以来,都是为了亚洲赛学算法,出现了几个问题: 1.学的其实只是怎么用算法,对算法的正确性没有好好理解,或者说 ...
- Sonar入门(二): Maven集成Sonar
Sonar对maven提供了简单可配的支持,要做的事情很简单——在maven/conf下settings.xml <profiles></profiles>标签之间添加如下内容 ...
- C# 中的委托和事件[转自张子扬]
文中代码在VS2005下通过,由于VS2003(.Net Framework 1.1)不支持隐式的委托变量,所以如果在一个接受委托类型的位置直接赋予方法名,在VS2003下会报错,解决办法是显式的创建 ...
- 彩虹vpn免费10分钟
账号:rainbowvpn password:10fenzhong server地址:t.chqvpn.com l2tp密钥:123456
- 浅谈jQuery中 wrap() wrapAll() 与 wrapInner()的差异
本文结合W3School的文档,分析了jQuery中 wrap() wrapAll() 与 wrapInner()的差异,并给出了图文对比教程,非常的简单实用,有需要的朋友可以参考下 今晚看书的时候发 ...
- UVA 12545 Bits Equalizer
题意: 两个等长的字符串p和q,p有‘0’,‘1’,‘?’组成,q由‘0’,‘1’组成.有三种操作:1.将‘?’变成0:2.将‘?’变成‘1’:3.交换同一字符串任意两个位置上的字符.问有p变到q最少 ...
- jQuery基础---Ajax基础教程
jQuery基础---Ajax基础 内容提纲: 1.Ajax 概述 2.load()方法 3.$.get()和$.post() 4.$.getScript()和$.getJSON() 5.$.ajax ...
- SQL高级查询的练习题
Student(S#,Sname,Sage,Ssex) 学生表 Course(C#,Cname,T#) 课程表 SC(S#,C#,score) 成绩表 Teacher(T#,Tname) 教师表 问题 ...
- 端口扫描器之java实现
端口扫描器之java实现 import java.net.*;import java.io.*;import java.awt.*;import java.awt.event.*;import j ...
- Qt5 多显示器获取不同显示器的分辨率和位置的方法
Qt5 多显示器获取不同显示器的分辨率和位置的方法 先放官方文档链接:QDesktopWidget - Qt5 Reference 之前一直在用被我乱搞后的ShadowPlayer作为默认播放器,后来 ...