webbrowser js ausführen
-
hey.
wie kann ich per c# in einen webbrowser js code einfügen und ausführen?
-
Ausführen garnicht denn das macht der Browser selbst und Du hast keine Zugriff darauf.
Du kannst im Code nur sagen das JS beim laden etc. ausgeführt werden soll.
Das machst Du aber in JS.Einfügen von Code in die Ausgabeseite: such mal nach c# clientscript
-
ich meinte den webbrowser von visual studio.
-
Wo hat VS einen Webbrowser oder meinst Du das WEBControl?
-
könnt sein dass das das selbe ist, aber in der toolbox heißt es halt webbrowser
-
Na ok, Der nimmst auch nur HTML an. Wenn DU da JS drin hast dann sollte das gehen.
Wo ist das Problem?
-
ich habe eine externe js datei und möchte ihn den browser ausführen lassen.
wie kann ich das machen?
-
http://lmgtfy.com/?q=c%23+webbrowser+javascript → http://notions.okuda.ca/2009/06/11/calling-javascript-in-a-webbrowser-control-from-c/
-
ok falsch formuliert.
diese methode habe ich schon gelesen.
aber wie kann ich js einfügen.
so will ichs machen:;
HtmlElement js = webBrowser1.Document.CreateElement("script"); js.SetAttribute("type", "text/javascript"); js.InnerText = "function etwas(){alert('hi');}"; webBrowser1.Document.GetElementsByTagName("head")[0].AppendChild(js);
es kommt aber ein fehler:
Die Eigenschaft wird für diesen Typ von HtmlElement nicht unterstützt.
-
http://social.msdn.microsoft.com/Forums/de/dotnetframeworkde/thread/799365c3-50aa-4922-895f-b51929f9108e
Vielleicht ist das dein Problem.
Ansonsten nochmal hier schauen:
http://msdn.microsoft.com/de-de/library/system.windows.forms.htmlelement.innerhtml.aspx
-
msdn schrieb:
Some tags, such as the SCRIPT tag, can only contain text content; setting InnerHtml will result in an error
Probiers stattdessen mit .InnerText
-
HtmlElement js = webBrowser1.Document.CreateElement("script");
js.SetAttribute("type", "text/javascript");
js.InnerText = "function etwas(){alert('hi');}";
webBrowser1.Document.GetElementsByTagName("head")[0].AppendChild(js);? habe ich doch
habs endlich gefunden wies geht
IHTMLScriptElement