【问题标题】:How can I pass textbox value from usercontrol(ascx) to another page (aspx) using Server.Transfer()如何使用 Server.Transfer() 将文本框值从 usercontrol(ascx) 传递到另一个页面 (aspx)
【发布时间】:2011-07-26 08:22:47
【问题描述】:

我正在 kentico 中编写一个用户控件(webpart)。我想使用 Server.Transfer() 将文本框的值从用户控件传递到 aspx 页面。

可以吗?如果是这样,我该怎么做?

最好的问候,

红军

【问题讨论】:

  • 这不是 Server.Transfer 的用途 - 只需使用 AJAX 将数据发送到服务器,无需重新加载页面或提交表单。
  • 为什么不在会话中存储值?
  • 感谢您的建议 Alberto Leon。现在我像你建议的那样使用会话来解决我的问题。 :) 在使用 Server.Transfer(pageurl,true) 之后,我仍然想知道如何从 page(aspx) 中获取价值。

标签: c# server.transfer kentico


【解决方案1】:

我不是特别喜欢这种方法,我更喜欢使用Sessions在页面之间传递数据,但是如果你需要这样做,这里按照这个page来做。

这里是 TL;DR 摘要。它需要三个脚本/页面:

Form.ascx - 这将是包含文本框值的控件。

FormParsingScript.aspx(在 Action 属性的 Form.ascx 中引用) - 这将执行实际的 Server.Transfer "FinalScript.aspx" 调用

FinalScript.aspx 将显示Response.Form["TextBoxName"] (HTTP POST) 或Response.QueryString["TextBoxName"] (HTTP GET) 的内容

【讨论】:

  • 你能给我举个例子吗?我不明白你的意思。
  • 谢谢!我已经测试过了。这是工作。非常感谢你。对于我的解决方案,我使用会话对象,因为我的用户控件只是根据客户端类型 (Request.ServerVariables["HTTP_REFERER"]) 和 Cookie 值进行重定向的逻辑。所以我没有表单对象。感谢您对 Server.Transfer() 方法的回复。
猜你喜欢
  • 2011-02-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多