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 1269 Intersecting Lines_几何模板
#include <iostream> #include <math.h> #include <iomanip> #define eps 1e-8 #define ...
- HDU 4122 Alice's mooncake shop
单调队列,裸的!!坑死了,说好的“All the orders are sorted by the time in increasing order. 呢,我就当成严格上升的序列了,于是就各种错.测试 ...
- poj 2531 Network Saboteur(经典dfs)
题目大意:有n个点,把这些点分别放到两个集合里,在两个集合的每个点之间都会有权值,求可能形成的最大权值. 思路:1.把这两个集合标记为0和1,先默认所有点都在集合0里. 2 ...
- Hadoop权威指南学习笔记二
MapReduce简单介绍 声明:本文是本人基于Hadoop权威指南学习的一些个人理解和笔记,仅供学习參考,有什么不到之处还望指出,一起学习一起进步. 转载请注明:http://blog.csdn.n ...
- UVA - 10131Is Bigger Smarter?(DAG上的DP)
题目:UVA - 10131Is Bigger Smarter? (DAG) 题目大意:给出一群大象的体重和IQ.要求挑选最多的大象,组成一个序列.严格的体重递增,IQ递减的序列.输出最多的大象数目和 ...
- 三十、Java图形化界面设计——布局管理器之BorderLayout(边界布局)
边界布局管理器把容器的的布局分为五个位置:CENTER.EAST.WEST.NORTH.SOUTH.依次相应为:上北(NORTH).下南(SOUTH).左西(WEST).右东(EAST),中(CENT ...
- OpenGLES 怎样在十天内掌握线性代数 - 希望这是真的!
OpenGLES 怎样在十天内掌握线性代数 - 希望这是真的! 太阳火神的漂亮人生 (http://blog.csdn.net/opengl_es) 本文遵循"署名-非商业用途-保持一致&q ...
- C#中按指定质量保存图片的实例代码 24位深度
/// <summary> /// 按指定的压缩质量及格式保存图片(微软的Image.Save方法保存到图片压缩质量为75) /// </summary ...
- 【 枚举 Enum 】循环 名称与值
foreach (WeekDay c in (WeekDay [])Enum.GetValues(typeof(WeekDay ))) {Console.Write(String.Format(& ...
- 引言:Canvas绘图API快速入门
引言:Canvas绘图API快速入门 在接触HTML5的初学者包括我都在很多地方见到非常炫的一些页面,甚至好多学习HTML5的开发者都是冲着Web端的页游去的,那么HTML5那么绚丽的页面效果以及游戏 ...