从 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\"
我正在制作一个 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\"