如何在不影响页面的情况下更改Web浏览器html内容?

时间:2014-02-23 12:41:02

标签: c# javascript html ajax webbrowser-control

我想用webbrowser组件上的c#替换html页面中的一些字符串。例如,有一些文本,如“欢迎页面”,它通过ajax加载该页面。

我想要消失并重新加载,我试着;

  

webbrowser1.document.body.innerhtml = webbrowser1.document.body.innerhtml.replace(“欢迎页面”,“”);

当我查找字符串“欢迎页面”时,它消失了。所以它工作正常。但, 所有的javascript函数都停在页面中。页面成为静态页面。

这就是问题, 如何更改页面中的任何字符串,而不影响页面的任何功能?

编辑: 我试过@ Mehran Hatami的解决方案。它工作正常。现在没有javascript或其他问题。

我用

解决了
foreach (HtmlElement link in webBrowser1.Document.GetElementsByTagName("span"))
{
    if (link.GetAttribute("id").ToString() == "messegetext")
    {
      MessageBox.Show(link.InnerHtml);
     if (link.InnerHtml.IndexOf("this is message which posted by ajax") > -1)
        {
            link.InnerHtml = "any new text to replaced I want :)";
        }
    }
}

0 个答案:

没有答案