业余电脑 > 网站技术 > 
 
[ASP教程4-8-1]Web程序中网页间数据传递方法小结
 
  来源:业余电脑 浏览次数:1256 发布日期:2011/4/19

介绍

我们总是会遇到这样的情况,需要将数值从一个网页传递到另一个网页。在这篇文章中,向你展示了几种从一个网页向另一个网页传递数值的几种方法。在此例子中,创建的网页由一个文本控件和几个按钮控件组成。在文本框中输入的数据通过被标识在按钮控件中的不同方法从一个网页传递到另一个网页。

Response.Redirect

让我们首先看一看如何使用Response.Redirect方法传递数据。这是它们之中最简单的方法。在文本框中输入一些数据,并且当你输入完成数据后,按下“Respose.Redirect”按钮。我们会得到一个提示,有时我们想在catch程序中传递另一个网页,意味着捕捉到例外程序并且向另一个网页传递。如果你试图这样做,它会给你一个System.Threading例外程序。因为你想遗留下一个线程向另一个网页传递数据,所以这个例外程序就会被抛出。

Response.Redirect("WebForm5.aspx",false);

这个语句告诉编译器定位到“WebForm5.aspx”,这里的“false”意味着在当前网页不能结束你正在做的事情。应该看一看线程发布命令的System.Threading类。在下面,看一看按钮事件的C#代码。“txtName”文本控件的名字,文本框的内的值传递到一个叫做“WebForm5.aspx”的网页。在“?”之后的“Name”符号只是一个临时的响应变量,这个变量保持着文本的数值。

private void Button1_Click(object sender, System.EventArgs e)

{

// Value sent using HttpResponse

Response.Redirect("WebForm5.aspx?Name="+txtName.Text);

}

好的,到这种观点为止,你使用Response发送了数值。刚刚,在此我收集到了这些数值,所以在“WebForm5.aspx”page_Load事件中,写入这些代码。首先,我们检查到输入的值不为null。如果不是这样,我们只是简单地在网页上使用Label控件显示数值。注意:如果你使用Response.Redirect方法来传递这些数值,所有这些数值在浏览器的URL中都是不可见的。你绝不能使用Response.Redirect来传递信用证号码和机密信息。

if (Request.QueryString["Name"]!= null)

Label3.Text = Request.QueryString["Name"];

Cookies

接下来使用Cookies。Cookies在服务器端创建,但是客户端省略。在此 “Cookies” 按钮的click事件中,写入以下代码:

HttpCookie cName = new HttpCookie("Name");

cName.Value = txtName.Text;

Response.Cookies.Add(cName);

Response.Redirect("WebForm5.aspx");

首先,创建一个cookie命名为“cName”。既然一个cookie实例可以拥有许多数值,告诉编译器这个cookie持有“Name”数值。我们将它赋值给TextBox并且最结后将它加入Response流,再使用Response.Redirect方法传递给其它网页。

让我们看一看如何得到被另一个网页传递的cookie数值。

if (Request.Cookies["Name"] != null )

Label3.Text = Request.Cookies["Name"].Value;

如你所看到的,象我们以前做一的一样正是使用同一种方法,刚刚我们在Request.QueryString之内,使用了Request.Cookies。记注一些浏览器不接收cookies。

  (本文作者:)
 
 
相关阅读
 [ASP教程7-9-2]ASP …
 [ASP教程7-9-1]ASP …
 [ASP教程7-8]ASP设计常…
 [ASP教程7-7]用ASP实现…
 [ASP教程7-6]用文本+AS…
 [ASP教程7-5]通过表单创建…
 [ASP教程7-4]一个ASP统…
 [ASP教程7-3]在ASP中实…
 [ASP教程7-2-2]用ASP…
 [ASP教程7-2-1]用ASP…
 [ASP教程7-1-2]用ASP…
 [ASP教程7-1-1]用ASP…
 [ASP教程6-6]Web程序中…
 [ASP教程6-5]关于如何保障…
 [ASP教程6-4]ASP文件中…
最新文章
 教你七招快速提高网站的百度排名和…
 jQuery自动加载更多程序
 jQuery实现在线文档
 jQuery实现放大镜效果
 CSS适配iPhone全面屏的方…
 JS代码中一个标点符号引起的问题…
 七步写出优秀的JS代码
 想做一个成功的网站,不要把精力放…
 2012年个人站长应该如何做才能…
 常用JS图片滚动(无缝、平滑、上…
 js实现Tab选项卡自动切换
 《爱赣榆》网站站长谈建站感受
 教您免费建立一个优秀网站
 网站优化推广步骤
 网站备案遇到的一些常见问题以及解…
查看更多内容     
关于我们    广告服务    邮箱登录    友情链接     网站统计
Copyright &copy 2002-2022 www.yydn.com,All Right reserved 版权所有   网站备案号:湘ICP备11011416-1号
湖南省长沙市高新区业余电脑工作室  管理群:94225851 站长QQ:293999
工作室邮箱:yydnyydn.com 工作室负责人:喻先生