当前位置导航:炫浪网>>网络学院>>网页制作>>ASP.NET教程

页面间传值与跳转的区别

  在a.aspx跳转到b.aspx

  通过Server.Transfer("b.aspx") 与Response.Redirect("b.aspx")的区别

  如果是通过通过Server.Transfer()在a.aspx跳转到b.aspx的,则在b.aspx页面,可以查找到保存在a.aspx页面中的 控件中的值,如果是Response.Redirect(),则得不到到a.aspx页面中控件的值。

  如果是通过Server.Transfer("b.aspx"),则可以通知以下方式得到 保留在 a.aspx中例如 Label,HiddenField中的值

  HiddenField hfOrderID = new HiddenField();

  HiddenField hfPayMoney = new HiddenField();

  if (Page.PreviousPage != null)

  {

  try

  {

  //

  //查找母版页 ,

  MasterPage masterPage = (MasterPage)Page.PreviousPage.Controls[0];

  //

  //查找容器

  ContentPlaceHolder contentPlaceHolder = (ContentPlaceHolder)masterPage.FindControl("ContentPlaceHolder3");

  System.Web.UI.UserControl userControl = (System.Web.UI.UserControl)contentPlaceHolder.FindControl("MyOrder1");

  //

  //查找到对应的数据传送HiddenField

  hfOrderID = (HiddenField)userControl.FindControl("hfOrderID");

  hfPayMoney = (HiddenField)userControl.FindControl("hfPayMoney");

  //

  //获取传入的订单号

  string strOrderID = hfOrderID.Value;

  string strPayMoney = hfPayMoney.value;

  }

  }

相关内容
赞助商链接