从 ASP.NET webcontrol 注入 javascript

Injecting javascript from ASP.NET webcontrol

我正在制作一个 ASP.NET 网络表单应用程序,但我在从网络控件向页面注入脚本时遇到了问题。该脚本与控件位于同一文件夹中:

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);

        //...
    }

}

当我检查脚本是否成功注入时,Chrome 给我这个:

Screenshot2

我猜问题与script src=\"my_script.js\"有关,但我尝试更改路径很长时间都没有成功。

期待您的帮助:)

您需要 javascript 文件的路径与呈现用户控件的页面相关。我假设用户控件正在由您的 Web 项目中的 index.aspx 加载。将 Scripts 文件夹添加到 Web 项目并将 javascript 文件移到那里。然后,将 src 更改为

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