2012-03-07 15 views
3

</head>の直後で<body>.の直前にリテラルを追加したいのですがどうすればこのセクションを動的に追加してリテラルを動的に追加できますか?だから、基本的にページはこのように見て終わるだろう:私は、ソートのheadタグを見つけることが、私はそれを閉じて、身体の前後リテラル権利を追加するよう指示する方法がわからない方法を説明しました動的にヘッダタグの後にスクリプトを追加する方法

<head> 
</head> 
<LITERAL HERE> 
<body> 
</body> 

。 (これはBing Ad Centerのトラッキングコードのためのものです)。しかし、ユーザーがこのページに到着するたびにトラッキングを追加するのではなく、特定のケースにのみ依存するため、動的にする必要があります。

あなたは

+0

申し訳Webフォームを、テキストをバインドすることができ、それは無効なHTMLだ、ということは行わないでください – user710502

+0

です。スクリプトは通常、「」の末尾にあるはずです。 – jrummell

答えて

3

あなたが直接あなたのページに文字列の内容を挿入する区切り文字を使用することができますありがとうございました。

<head runat="server"> 
    <title></title> 
</head> 
<%= TrackingString %> 
<body> 
</body> 

あなたはこの文字列は、それを参照しているページでグローバルに宣言している、とあなたがページ上でこの文字列を操作するように、それがテキストとしてページに書かれており、HTMLとして解析されますを確認します。

public partial class Default : System.Web.UI.Page 
{ 
    public string TrackingString; 

    protected void Page_Load(object sender, EventArgs e) 
    { 
     TrackingString = "<YourHtmlTag></YourHtmlTag>"; 
    } 
} 

ユーザーを追跡したくない場合は、文字列をString.Emptyまたは ""に設定するだけで、HTMLには何も書き込まれません。

+0

私の問題は、これがマスターページに配置されていることです。基本的にはマスターページを見つけて、そのヘッダーを探してコードを入力する必要があります。 – user710502

+0

マスターページでこれを行うことができます。 – jrummell

0

あなたはリテラルコントロールを使用し、ページロードイベントで

<head> 
    <asp:Literal ID="literal1" runat="server"></asp:Literal> 
    <title></title> 
</head> 

C#の

protected void Page_Load(object sender, EventArgs e) 
{ 
    if(condition) 
    { 
     literal1.Text = "html or script tag"; 
    } 
} 
関連する問題