2017-12-28 21 views
0

私はASP.NET webformsアプリケーションを作成していますが、Webコントロールからページにスクリプトを挿入する際に問題があります。スクリプトはコントロールと同じフォルダにあります。ASP.NET webcontrolからjavascriptを挿入する

Screenshot1

だから私は次のようにしようとしている:

:スクリプトが正常に注入されてしまった場合、私がチェックしたとき

[ToolboxData("<{0}:MyWebControl runat=server></{0}:MyWebControl>")] 
[System.Drawing.ToolboxBitmap(typeof(MyWebControl))] 
public class MyWebControl : Image 
{ 

    //... 

    protected override void OnPreRender(EventArgs e) 
    { 
     base.OnPreRender(e); 


     string scriptStr = "<script src=\"my_script.js\" type=\"text/javascript\">"; 
     ClientScriptManager csm = Page.ClientScript; 
     csm.RegisterClientScriptBlock(this.Page.GetType(), "MyScriptTag", scriptStr); 

     //... 
    } 

} 

、クロムは私にこれを提供します

Screenshot2

私はこの問題はscript src=\"my_script.js\"に接続されていると思いますが、私はのためにパスを変更してみました長い間成功していない。

あなたはユーザーコントロールが内部にレンダリングされているページへの相対値ではJavaScriptファイルへのパスを必要とするいくつかの助け:)

答えて

0

のために楽しみにしています。私はあなたのWebプロジェクトでindex.aspxによってユーザーコントロールがロードされていると仮定しています。 WebプロジェクトにScriptsフォルダを追加し、そこにjavascriptファイルを移動します。その後、働いsrc

+0

src=\"/Scripts/my_script.js\"

にグレートを変更!しかし、それは私が意味するものではありません。何らかの形で私が最初に置いた場所にスクリプトファイルをカプセル化することは可能ですか?私は最初のプロジェクトでそれを持っています – YogoWafel

+0

埋め込みリソースとしてスクリプトを設定し、それを適切に実装するための追加手順を実行する必要があります。 https://msdn.microsoft.com/en-us/library/bb398930.aspx - これは古い文書ですが、実行しようとしている内容に関連している必要があります。 –

関連する問題