比如其HTML如下:
<a target="_blank" href='./PubWindow/WorkLayoutBrower.aspx?WorkLayoutID=3' title=""></a>
<a target="_blank" href='./PubWindow/OfficeDocBrower.aspx?OfficeDocID=20090616162118001' title=""></a>在WebBrowser控件中怎么样才能去除掉含有 OfficeDocBrower.aspx 中的 target="_blank" ?

解决方案 »

  1.   

    没用过WebBrowers。
    应该可以动态添加的
    遇到事OfficeDocBrower.aspx的不设置target。。
      

  2.   

    target 是连接后要显示的 位置或者框架。可以用空代替,我自己写的控件没有。
      

  3.   

    值都在document对象里面,有些可以控制,有些不行,要完全控制用webbrowser还做不到
      

  4.   

    你为什么要设置"_blank"?
    去掉不成么?
      

  5.   

    通过webbrowser.document.getelementbytagname("a");获取所有连接
    循环修改
      

  6.   

    屏蔽链接
           this.WebBrowser1.AllowNavigation = false;
    取消WebBrowser控件的NewWindow操作:
           this.WebBrowser1.NewWindow += new CancelEventHandler(WebBrowser1_NewWindow);
           private void WebBrowser1_NewWindow(object sender, CancelEventArgs e)
           {
               e.Cancel = true;
           }或解析HTML参考
      

  7.   

    试试: HtmlElementCollection hc = this.webBrow.Document.Links;
                foreach (HtmlElement he in hc)
                {
                    if (he.GetAttribute("href").Contains("OfficeDocBrower.aspx"))
                    {
                        he.OuterHtml.Replace("target=_blank", "");
                    }
                }
      

  8.   

    或者试试:private void webBrow_NewWindow(object sender, CancelEventArgs e)
            {
                e.Cancel = true;//取消打开新窗口动作
                try
                {
                    //获取要打开的新窗口链接地址
                    string url = this.webBrow.Document.ActiveElement.GetAttribute("href");
    //这个是将链接地址在另个嵌入WebBrowser控件的窗体中打开
                    ContainerIEBrow.ShowContainerIEBrow(this, new Uri(url));
                }
                catch
                {
                }
            }
      

  9.   

    通过HttpWebRequest/HttpWebResponse也可以
    参考:
    http://www.phpchinaz.cn/c/CSharp/52_5201_1213674267.html
    将通过HttpWebRequest获取的字符串进行处理后付给WebBrowser!
      

  10.   


    HtmlElementCollection coll_a = doc.GetElementsByTagName("A");
                    for (int i = 0; i < coll_a.Count; i++)
                    {
                        if (coll_a[i].OuterHtml.IndexOf(OfficeDocBrower.aspx) > 1)
                        {
                            coll_a[i].SetAttribute("target", "_self");
                        }
                    }
      

  11.   


    [align=left]HtmlElementCollection coll_a = doc.GetElementsByTagName("A");
                    for (int i = 0; i < coll_a.Count; i++)
                    {
                        if (coll_a[i].OuterHtml.IndexOf("OfficeDocBrower.aspx") > 1)
                        {
                            coll_a[i].SetAttribute("target", "_self");
                        }
                    }[/align]
      

  12.   


    HtmlElementCollection coll_a = doc.GetElementsByTagName("A");
    for (int i = 0; i < coll_a.Count; i++)
    {
        if (coll_a[i].OuterHtml.IndexOf("OfficeDocBrower.aspx") > 1)
        {
           coll_a[i].SetAttribute("target", "_self");
        }
    }