Ich mache eine ASP.NET-Webforms-Anwendung und ich habe ein Problem mit der Injektion eines Skripts in die Seite von einem Web-Steuerelement. Das Skript wird in dem gleichen Ordner wie Steuer befindet:Injizieren von JavaScript aus ASP.NET Webcontrol
So wie ich versuche:
[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);
//...
}
}
Wenn ich überprüfen, ob das Skript erfolgreich injiziert wurde, Chrome gibt mir dies:
ich denke, das Problem mit script src=\"my_script.js\"
verbunden ist, aber ich versuchte, den Weg zu ändern für lange ohne Erfolg.
Wir freuen uns für etwas Hilfe :)
Schön, dass gearbeitet! Aber genau das meinte ich nicht. Ist es möglich, die Skriptdatei an dem Ort zu kapseln, an dem ich sie ursprünglich platziert habe? Ich möchte es im ersten Projekt haben – YogoWafel
Sie müssten das Skript als eine eingebettete Ressource festlegen und zusätzliche Schritte ausführen, um es ordnungsgemäß zu implementieren. https://msdn.microsoft.com/en-us/library/bb398930.aspx - Dies ist ein älteres Dokument, sollte aber relevant sein für das, was Sie versuchen zu tun. –