WebBrowser delete tag

Posted on 2010-08-30
Last Modified: 2012-05-10

How can i delete tag from webbrowser component?
Or how i can get tag source by tag name?
Question by:lavitz
LVL 37

Expert Comment

by:Geert Gruwez
ID: 33557375
you can hide it be recreating a new component
but it takes a special function call

is it something like that your are looking for ?

you can't hide it from the standard component
LVL 37

Expert Comment

by:Geert Gruwez
ID: 33557407
in the new package you need to call this procedure from DesignIntf

procedure UnlistPublishedProperty(ComponentClass: TClass; const PropertyName: string);

you do this after the call to registercomponent.

UnlistPublishedProperty(TWebBrowser, 'TAG');
LVL 37

Expert Comment

by:Geert Gruwez
ID: 33557433
Announcing the Most Valuable Experts of 2016

MVEs are more concerned with the satisfaction of those they help than with the considerable points they can earn. They are the types of people you feel privileged to call colleagues. Join us in honoring this amazing group of Experts.


Author Comment

ID: 33557434
Iam using webbrowser for mail editing. In edit mode, source mail have additional tags and scripts that are using only when editing. Before mail save iis done i need to remove these tags end scripts so i search for safe solution to remove them.

Author Comment

ID: 33557438
And by 'tag' i mean html tag i.e <SPAN>
LVL 37

Expert Comment

by:Geert Gruwez
ID: 33557468
ah it's in the source code of the html

if you have the source, then you can use posex on that if you have a unique way of distinguishing the tags

<TAG ID=1234 ...> </TAG>

n := PosEx('<TAG ID=1234', html.sourcetext);
m := PosEx('</TAG>', html.sourcetext, n);
Delete(Html.sourcetext, n, m-n+5);

LVL 13

Accepted Solution

aflarin earned 500 total points
ID: 33557523
if your span tag has id or name attribute like this:

<span id="tag_name"... or <span name="tag_name"...

you can use this code:

  WebBrowser1.OleObject.Document.all.Item( 'tag_name' ).removeNode( True );

if no - please show all html code, because it need to find where span tag is located

Expert Comment

ID: 33557737
If you want to remove all tags in a message you can use this function. Just pass the complete message as a string and it will return the string with all tags removed. If your message is not in one string, simply repeat the procedure for each one.
Function RemoveTags (Code:string) : string;
  Var Start, Stop : integer;
      Start:=Pos ('<',Code);
      While Start>0 do
          While (Stop<=Length (Code)) and (Code [Stop]<>'>') do
            Inc (Stop);
          If Stop>Length (Code) then
          Code:=Copy (Code,1,Start-1)+Copy (Code,Stop+1,Length (Code)-Stop);
          Start:=Pos ('<',Code)

Open in new window


Featured Post

Free Tool: Subnet Calculator

The subnet calculator helps you design networks by taking an IP address and network mask and returning information such as network, broadcast address, and host range.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

This article explains how to create forms/units independent of other forms/units object names in a delphi project. Have you ever created a form for user input in a Delphi project and then had the need to have that same form in a other Delphi proj…
Introduction The parallel port is a very commonly known port, it was widely used to connect a printer to the PC, if you look at the back of your computer, for those who don't have newer computers, there will be a port with 25 pins and a small print…
The Email Laundry PDF encryption service allows companies to send confidential encrypted  emails to anybody. The PDF document can also contain attachments that are embedded in the encrypted PDF. The password is randomly generated by The Email Laundr…

829 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question