2011-02-25 96 views
1

我對ASP.net很陌生。我有一個C#的內容頁面,在其中我想插頁一半的HTML內上下驗證碼:ASP.NET內容頁面動態內容出現在HTML輸出的頂部

<% 
HttpResponse r = Response; 
r.Write(HttpContext.Current.Request.ServerVariables["SERVER_NAME"]); 
%> 

但是,當我查看該頁面,這些內容出來第一,連標籤之前。

有關如何獲取此代碼內聯的任何想法?

謝謝!

編輯 我只想給所有回答這個問題的人添加一個註釋來解釋你所做的事情。 您可以省下寶貴的時間來幫助我,對您來說陌生人解決工作中的困難問題,這使得我可以在週五晚上離開辦公室,趕上最後一班巴士到我家50英里以外的地方,並看到我在牀上生病的妻子。你不只是回答我的問題,你讓我的一天變得更好。非常感謝!

史蒂芬

回答

3

因爲你正在做一個ResponseWrite,將一切之前推出。如果你想在一個特定的點,只是嵌入的東西,你可以這樣做:

<%= HttpContext.Current.Request.ServerVariables["SERVER_NAME"]) %> 

<%= %>將寫入任何字符串在HTML中的確切位置。

您還可以使用Literal控件,並在代碼隱藏中指定其Text屬性,或者如果需要格式化,則使用Label

0

你可以把一個標籤,你希望文本出現,然後設置標籤的文本,而不是做這樣的網頁上。簡單地說一個asp標籤頁上,並frmo後面的代碼做

myLabel.Text = HttpContext.Current.Request.ServerVariables["SERVER_NAME"].ToString(); 

其中myLabel是在你的HTML標記的標籤的ID。

0

定義頁面這樣的,要顯示在輸出串中的DIV:

<div id="myDIV" runat="server" />

然後,而不是r.Write()你可以簡單的設置DIV的內文是什麼你想:

myDIV.innerText = HttpContext.Current.Request.ServerVariables["SERVER_NAME"];

0

當您使用的Response.Write( 「...」);它顯示在頁眉之前,而不是使用Response.Write,你可以在窗體上放置一個標籤,無論你想看什麼消息並設置標籤的Text屬性。

0

或者如果你只是想要的文本,沒有HTML標記。 使用文字。

在aspx文件

<asp:Literal ID="MyLiteral" runat="server" /> 

代碼隱藏

MyLiteral.Text = HttpContext.Current.Request.ServerVariables["SERVER_NAME"].ToString();