如何在C#中删除HtmlScriptElement

时间:2013-01-27 17:55:32

标签: c# removechild

如何以编程方式删除附加的html元素?

这是我的代码(我想删除它从未存在过的scriptEl)和Web浏览器的任何InvokeScript都会导致错误或无操作:

HtmlElement head = instance.webBrowser.Document.GetElementsByTagName("head")[0];
HtmlElement scriptEl = instance.webBrowser.Document.CreateElement("script");
IHTMLScriptElement element = (IHTMLScriptElement)scriptEl.DomElement; 
element.text = scriptText;
head.AppendChild(scriptEl);

我一直在努力,但没有成功。每次调用脚本都是从InvokeScript命令有效的。应该存在像RemoveChild这样的函数。我怎么能做到这一点?

感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

List<HtmlElement> toRemove = new List<HtmlElement>();
foreach (HtmlElement element in Form.Children)
{
    if (element.Id != string.Empty)
    {
        toRemove.Add(element);
    }
}
foreach (HtmlElement element in toRemove)
{
    Form.RemoveChild(element);
}