“
在下面的代码中, txtName”
“
是待传值的文本框的名字,那个跟在 ?”
“
后面的 Name” 是一
个临时 response 变量的标志,它承载了 txtName 的值。
private
void
Button1_Click(
object
sender, System.EventArgs e)
{
// Value sent using HttpResponse
Response.Redirect(
"WebForm5.aspx?Name="
+txtName.Text);
}
OK,到此位置,我们已经完成了 Response 的传值。但是,我们在"WebForm5.aspx"中怎样
接收传来的值呢?不要急,我们将在"WebForm5.aspx"的 page_Load 事件中写下面的代码。
“
首先,我们要确认传来的值不是 null”
“
,如果不是 null”,我们就可以用 Label 将这个值显示
出来。
注:当我们使用 Response.Redirect 传递变量时,所有的变量都能在浏览器的 URL 中看到,
我们不能用这种方法来传递重要的机密数据,如信用卡号等。
if
(Request.QueryString[
"Name"
]!=
null
)
Label3.Text = Request.QueryString[
"Name"
];
2. Cookies 方式
接下来是用 cookies, Cookies
“
由服务端创建,但保存在客户端,当我们点击 Cookies”按钮
时,运行如下代码:
HttpCookie cName =
new
HttpCookie(
"Name"
);
cName.Value = txtName.Text;
Response.Cookies.Add(cName);
Response.Redirect(
"WebForm5.aspx"
);
“
首先,我们创建了一个名叫 cName”的 cookie 实例,由于一个 cookie 实例可以保存多个值,
我们需要告诉编译器这个 cookie
“
将保存 Name”值,并把 txtName.Text 的值赋给它,并把
它加到"
”
输出流 中,并使用 Response.Redirect 输出到另外一个网页。
然后让我们看看怎样在目标页面中取出这个 cookie 中的值: