注册 登录
编程论坛 ASP.NET技术论坛

如何从不直接链接的网页上获取textbox值

xlRain 发布于 2010-03-24 11:14, 1545 次点击
如:test.aspx网页中这样写test1.aspx?c_test={0},server.UrlEncode(textbox1.text)

在test1.aspx中可以获取这个值
string c_test = Convert.ToString(Request.QueryString[Server.UrlDecode ("c_test")]);

但是在test11.aspx中怎么获取这个值呢??

其中test1.aspx不直接链接test,其链接顺序是这样的test-----》test1-----》test11

3 回复
#2
YSKING2010-03-24 11:57
其实并不一定非得 textbox1.text 这样的形式获取值的呢。也可以通过session ,cookie等等也行的。
具体给你个文章看看吧,也许会有帮助
http://blog.
#3
czyzhuo2010-03-26 09:26
页面参数传递的方法有以下几种
一、使用QueryString
    这种方法的主要优点是实现起来非常简单,然而它的缺点是传递的值是会显示在浏览器的地址栏上的(不安全),同时又不能传递对象,但是在传递的值少而安全性要求不高的情况下,这个方法还是一个不错的方案。

    楼主用的就是这种方法传值
    这种方法传值是不跨页面的,你只能在test1.aspx转到test11.aspx的时候再把这个值传一次过去。

二、使用Session变量
    使用Session变量是可以在页面间传递值的的另一种方式,在本例中我们把控件中的值存在Session变量中,然后在另一个页面中使用它,以不同页面间实现值传递的目的。但是,需要注意的是在Session变量存储过多的数据会消耗比较多的服务器资源,在使用session时应该慎重,当然了,我们也应该使用一些清理动作来去除一些不需要的session来降低资源的无谓消耗。

    这种方法在以后的页面都能获值,只要你不关闭它。

三、使用Server.Transfer
    这个方法相比上面介绍的方法稍微复杂一点,但在页面间值传递中却是特别有用的,使用该方法你可以在另一个页面以对象属性的方式来存取显露的值,当然了,使用这种方法,你需要额外写一些代码以创建一些属性以便可以在另一个页面访问它,但是,这个方式带来的好处也是显而易见的。总体来说,使用这种方法是简洁的同时又是面向对象的。



#4
misswang2010-03-28 17:08
楼上的方法很值得参考
1