0

我正在编写一个带有 VB 后端的 ASP Web 应用程序。我想做的是生成一个 url 并将其显示在页面上的控件中。例如,如果我在表单上有一个标签和一个按钮。标签是空白的。单击按钮时,将触发以下代码:

 Protected Sub btnGenerate_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnGenerate.Click
    label1.Text = "Hello"
End Sub

我想要的是一个指向我的 ASP 页面的 url,标签中带有“Hello”字样。这可能吗?

4

2 回答 2

2

您可以执行以下操作:

{siteaddress}/aspxpage.aspx?label=hello

然后在您的 aspx 页面中执行以下操作:

<asp:label runat="server" id="yourLabelId" text='<%=Request.QueryString("label")%>' />

或在 Page_Load 中:

yourLabelId.Text = Request.QueryString("label")

我建议在将数据写入页面之前验证数据。

于 2012-05-25T05:05:55.457 回答
1

传递查询字符串中的文本,例如假设页面的相对路径是 /pagename.aspx ,您可以按照下面给出的示例传递查询字符串:

/pagename.aspx?text=hello

在 c# 中在 Page_Load 事件中编写以下代码

//You don't have to check the url all the time , so just check it if page is not posting back (first time after user visits the page and ignore all other same page post backs. Label can maintain its control state (text value) after every postback, so assign it only once to increase performance
if (!IsPostBack)
{
    //Check if query string is provided or not , if it is not provided take some default text, I am taking empty string as default text.
    string givenText = (Request.QueryString["text"] == null)?"":Request.QueryString["text"];
    label1.Text = givenText;
}

您还可以为通过查询字符串和默认文本给出的文本创建属性。

于 2012-05-25T05:14:16.543 回答