各位高手,多多发言呀,最好动手写两句呀!!!!!
解决方案 »
- VS.NET2005中编辑HTML添加<!--注释的快捷键是什么?
- win 2003上部署 mvc3程序的问题~~~!
- 请教一个Javascript的函数?解决了立马给分!
- 怪怪~~太怪了~用过VS.2005 的朋友过来~
- 如何控制GridView里没行的高度?
- 无奈,求人教我在页面控件中使用 “<% =XXX %>”,求与之有关代码学习一下
- 求助!希望能得到大哥的提供!
- 一个关于TreeView和框架的问题!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
- 计数器高效实现
- VS2012发布网站方式和发布Web
- 新手急!!!asp.net怎样制作setup...
- 我是新手有个问题不明白
当然用session也可以!
◆页面间传参的常用方式
1)request方式:仅适用于一个或多个字符串
Response.Redirect("webform2.aspx?myid=123&myname=eddie005");
取: string myID = Request.QueryString["myid"];
string myName = Request.QueryString["myname"];
但是该方法传参遇到特殊的字符例如“”&、“+”等就会有问题,所以需要进行编码转换:
string tmpID = Server.UrlEncode("123");
string tmpName = Server.UrlEncode("暴&走");
Response.Redirect("webform1.aspx?myid=" + tmpID + "&myname=" + tmpName);
取: string myID = Server.UrlDecode(Request.QueryString["myid"]);
string myName = Server.UrlDecode(Request.QueryString["myname"]);
对应的Javascript函数是escape()和unescape()2)Session:适用于对象
存:Session["myTable"] = new DataTable();
取:DataTable tmp = Session["myTable"] as DataTable;3)Server.Transfer:适用于对象
webForm1:
public int MyAge
{
get{return Convert.ToInt32(TextBox1.Text);}
}
public DataTable MyTable
{
get{return myDataTable;}
} private void Button1_Click(object sender, System.EventArgs e)
{
Server.Transfer("webForm2.aspx");
}
webForm2:
private void Page_Load(object sender, System.EventArgs e)
{
if(!IsPostBack)
{
if(Context.Handler.ToString()=="ASP.webForm1_aspx")
{
webForm1 webForm =(webForm)Context.Handler;
int myAge = webForm.MyAge;
DataTable tmpTable = webForm.MyTable;
}
}
}
Server.Transfer安全性最高:)
Default.aspx
定义一个public DataTable dt;
Server.Transfer("BookMarkList.aspx");
//获得上一个页的页对象
Default tempPageClass = (Default)Context.Handler;
tempPageClass.dt; //这个就是了。。