一、webform跨页面传值
1、内置对象
地址栏数据拼接 QueryString
优点:简单好用;速度快;不消耗服务器内存。
缺点:只能传字符串;保密性差(调转页面后在地址栏显示);长度有限。
响应请求对象 Response
获取请求对象 Request
(1)跳转页面
Response.Redirect(path);//重定向,可以跳转任何网页
Rerver.Trandfer(path);//跳转后地址栏的网址不改变,只能跳转该网站根目录下的网站
Respone.Write("<script>JS语句</script>");
(2)页面传值
步骤:
1)拼接数据
String path="相对路径?aaa=" +TextBox1.Text+"&bbb="+TextBox2.Text;
注意:数据拼接是英文状态的符号,并且不能有空格。
2)跳转页面
3)接收数据
//括号内的字符串是数据拼接路径问号后面的等号之前的字符串
Label1.Text=Request["aaa"];
Label1.Text+=Request["bbb"];
=、删除与修改
1、每一行都添加上删除和修改,使用a标签
<td><a href="DeleteWeb.aspx?id=<%#Eval("UserName")%>" class="shanchu">删除</a></td> <td><a href="Updateweb.aspx?id=<%#Eval("UserName")%"class="xiugai"">修改</a></td>
2、删除
点击事件(JS),提示用户是否删除:
ok = confirm("是否要删除这条信息?");
1)否 停止链接 retrun false;
2)是
链接新页面删除,删除后跳转回主页面
//新页面只写后台代码就可以了protected void Page_Load(object sender, EventArgs e) { string uname=Request["id"];//接收传入的值 new Usersdata().shan(uname);//删除 Response.Redirect("Mainweb.aspx");//跳转回主页面 }
执行时间很短,看上去就像单击了确定后接着删了,好像没跳转。
3、修改
跳转新页面将主键值传过去
根据主键值查找后绑定上数据
//这些代码写在Page_Load中 //获取传入的值 TextBox1.Text = Request["id"]; //将原数据显示 Users uy = new Usersdata().cha(TextBox1.Text);//根据传入的值查找 TextBox4.Text = uy.NickName; TextBox5.Text = uy.Phone; TextBox6.Text = uy.Email; //性别(bool类型) RadioButtonList1.SelectedValue = uy.Sex.ToString(); //民族 DropDownList1.SelectedValue = uy.Natoin; //出生日期 string[] shengri = uy.birdd.ToString().Split(‘-‘);//将日期分离绑定到相应的控件 DropDownList5.SelectedValue = shengri[0]; DropDownList6.SelectedIndex =Convert.ToInt32(shengri[1])-1;//用索引绑定的 rizi();//根据年和月刷新一下天数的显示 DropDownList7.SelectedIndex = Convert.ToInt32(shengri[2]) - 1; //地区 string[] di = uy.Area.Split(‘-‘);//将地区分类绑定到相应的控件上 DropDownList2.SelectedValue=di[0]; //根据省刷新一下市和区 diqu(DropDownList3, DropDownList2.SelectedValue.ToString()); diqu(DropDownList4, DropDownList3.SelectedValue.ToString()); DropDownList3.SelectedValue =di[1]; //根据市刷新一下区 diqu(DropDownList4, DropDownList3.SelectedValue.ToString()); DropDownList4.SelectedValue =di[2];
修改后添加数据,与添加的区别是主键值不可修改。
时间: 2024-12-24 07:14:05