我想用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 :)";
}
}
}