2012-05-25 18 views
0

我正在用VB後端編寫一個ASP Web應用程序。我想要做的是生成一個網址,並在頁面上控制顯示。例如,如果我在表單上有一個標籤和一個按鈕。標籤是空白的。當按鈕被點擊下面的代碼火災:在asp.net控件中顯示查詢字符串

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

我想有是將指向我的ASP頁面,在標識中的文字「你好」的URL。這可能嗎?

回答

0

傳遞查詢字符串中的文本例如假設頁面的相對路徑是/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; 
} 

您也可以創建通過查詢字符串和默認文本給出的文本屬性。

+0

這個技巧。謝謝 –

2

你可以做到以下幾點:

{siteaddress}/aspxpage.aspx?label=hello 

然後在你的aspx頁面做這樣的事情:

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

或者在Page_Load:

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

我會建議驗證數據寫入頁面之前。

+0

如果我使用這個。而且我沒有執行POSTBACK,即個人正常使用應用程序,它仍然會在查詢字符串中查找「標籤」嗎? –