0

私はasp.net2.0c#アプリケーションを持っています。ユーザーコントロールのコントロールコレクションに追加したいスクリプトが2つあります。それらを次々に追加する代わりに、1つのスクリプトタグを開き、2つのsrc文字列を文字列として一緒にスローします

string tagLinks = "/Resources/Javascript/js/taglinks.js"; 
HtmlGenericControl scriptTagLinks = new HtmlGenericControl("script"); 
scriptTagLinks.Attributes["type"] = "text/javascript"; 
scriptTagLinks.Attributes["src"] = tagLinks; 
this.Controls.Add(scriptTagLinks);

script = new HtmlGenericControl("script"); 
script.Attributes.Add("type", "text/javascript"); 
script.Attributes.Add("src", gsJSHost); 
this.Controls.Add(script);

これが起こることです:

<script type="text/javascript">/Resources/Javascript/js/taglinks.jsvar pageTracker =
_gat._getTracker('UA-1213766-27'); pageTracker._initData();pageTracker._trackPageview();</script>
4

1 に答える 1

0

あなたの答えについて私が見つけたものは次のとおりです。

(基本的に) コードをユーザー コントロールのロード イベントに追加しました (これにより、探しているスクリプト タグが挿入されます)。グローバル変数に含まれるグローバル スクリプトがないgsJSHostため、変数名に置き換えました。

これは私の制御コードです:

Public Partial Class MyControl
    Inherits System.Web.UI.UserControl

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        Dim tagLinks As String = "/Resources/Javascript/js/taglinks.js"
        Dim scriptTagLinks As HtmlGenericControl = New HtmlGenericControl("script")
        scriptTagLinks.Attributes.Add("type", "text/javascript")
        scriptTagLinks.Attributes.Add("src", tagLinks)
        Me.Controls.Add(scriptTagLinks)

        Dim script As New HtmlGenericControl("script")
        script.Attributes.Add("type", "text/javascript")
        script.Attributes.Add("src", "gsJSHost")
        Me.Controls.Add(script)

    End Sub

End Class

これは私の結果のページソースです:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title>

</title></head>
<body>
    <form name="form1" method="post" action="Default.aspx" id="form1">
<div>
<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUIMTI2NzczMzlkZE8ExRatvhvKqmX5DtpWJX8MhAcE" />
</div>

    <div>
        <script type="text/javascript" src="/Resources/Javascript/js/taglinks.js"></script><script type="text/javascript" src="gsJSHost"></script>
    </div>
    </form>
</body>
</html>

私の Google コード デモ プロジェクトでソース コードをダウンロードしてください: http://code.google.com/p/stackoverflow-answers-by-scott/

圧縮されたダウンロードへの直接リンク:
http://stackoverflow-answers-by-scott.googlecode.com/files/1716701.zip

これがお役に立てば幸いです。

ありがとう!

于 2009-11-11T18:13:38.700 に答える