strip tag based on attribute

Any questions involving matching text strings to patterns - the pattern is called a "regular expression."

Moderator: General Moderators

Post Reply
User avatar
kendall
Forum Regular
Posts: 852
Joined: Tue Jul 30, 2002 10:21 am
Location: Trinidad, West Indies
Contact:

strip tag based on attribute

Post by kendall »

Hey guys can anyone give me a regular expression to strip a tag based on an attribute value?

I'm trying to strip a <td> tag if the class="hide" however the class may contain other styles
User avatar
AbraCadaver
DevNet Master
Posts: 2572
Joined: Mon Feb 24, 2003 10:12 am
Location: The Republic of Texas
Contact:

Re: strip tag based on attribute

Post by AbraCadaver »

Not tested, but something like this should work (maybe someone else has a simpler one). Also, I'm assuming you want to strip from the <td up to and including the </td>:

Code: Select all

$stripped = preg_replace('#<td[^>]+?class="hide"[^>]+>.*(?=</td>)</td>#i', '', $html);
If you need to handle cases where class may be class="hide important red", then this may work:

Code: Select all

$stripped = preg_replace('#<td[^>]+?class="hide[^"]*?"[^>]+>.*(?=</td>)</td>#i', '', $html);
-Shawn
mysql_function(): WARNING: This extension is deprecated as of PHP 5.5.0, and will be removed in the future. Instead, the MySQLi or PDO_MySQLextension should be used. See also MySQL: choosing an API guide and related FAQ for more information.
User avatar
kendall
Forum Regular
Posts: 852
Joined: Tue Jul 30, 2002 10:21 am
Location: Trinidad, West Indies
Contact:

Re: strip tag based on attribute

Post by kendall »

AbraCadaver wrote: If you need to handle cases where class may be class="hide important red", then this may work:

Code: Select all

$stripped = preg_replace('#<td[^>]+?class="hide[^"]*?"[^>]+>.*(?=</td>)</td>#i', '', $html);
-Shawn
I tried this one...but the "hide" is at the end....didnt work...the "hide" is at the last style of the class attribute
User avatar
AbraCadaver
DevNet Master
Posts: 2572
Joined: Mon Feb 24, 2003 10:12 am
Location: The Republic of Texas
Contact:

Re: strip tag based on attribute

Post by AbraCadaver »

Simplified I hope:

Code: Select all

$stripped = preg_replace('#<td[^>]+?class=".*?hide.*?</td>#i', '', $html);
-Shawn
mysql_function(): WARNING: This extension is deprecated as of PHP 5.5.0, and will be removed in the future. Instead, the MySQLi or PDO_MySQLextension should be used. See also MySQL: choosing an API guide and related FAQ for more information.
User avatar
kendall
Forum Regular
Posts: 852
Joined: Tue Jul 30, 2002 10:21 am
Location: Trinidad, West Indies
Contact:

Re: strip tag based on attribute

Post by kendall »

AbraCadaver wrote:Simplified I hope:

Code: Select all

$stripped = preg_replace('#<td[^>]+?class=".*?hide.*?</td>#i', '', $html);
-Shawn
This seams to strip TD that dont have the "hide" as well...only if the class has a hide in it should it replace the TD

Code: Select all

<TABLE cellSpacing=0 cellPadding=7>
<TBODY>
<TR>
<TD class=year align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e1">Year</TD>
<TD class="hide" align=middle spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e3">Quarter</TD>
<TD class="monTD hide" align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e4">MonTD</TD><!-- <TD>@Cnt_Cntry</TD> -->
<TD class=currency align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e5"># Funds Per Currency</TD>
<TD class=country align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e6"># Funds Per Country</TD>
<TD class=type align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e7"># Funds Per Type</TD></TR>
<TR class=even>
<TD class=year align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e8">2000</TD>
<TD class="quarter style1 hide" align=middle spry$$ID="undefined">1</TD>
<TD class="monTD style1 hide" align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e9">March</TD><!-- <td>TRINIDAD AND TOBAGO</td> -->
<TD class="currency style1" align=left>United States Dollar(16)<BR></TD>
<TD class="country style1" align=left>TRINIDAD AND TOBAGO(1)<BR></TD>
<TD class="type style1" align=left>MUTUAL FUND (2)<BR></TD></TR>
<TR class=odd>
<TD class=year align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e10">2001</TD>
<TD class="quarter style1 hide" align=middle spry$$ID="undefined">3</TD>
<TD class="monTD style1 hide" align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e11">September</TD><!-- <td>TRINIDAD AND TOBAGO</td> -->
<TD class="currency style1" align=left>Trinidad and Tobago Dollar(4)<BR></TD>
<TD class="country style1" align=left></TD>
<TD class="type style1" align=left>OTDER (2)<BR></TD></TR>
<TR class=odd>
<TD class=year align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e12"></TD>
<TD class="quarter style1 hide" align=middle spry$$ID="undefined">4</TD>
<TD class="monTD style1 hide" align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e13">October</TD><!-- <td>BARBADOS</td> -->
<TD class="currency style1" align=left>Barbados Dollar(1)<BR></TD>
<TD class="country style1" align=left>BARBADOS(1)<BR></TD>
<TD class="type style1" align=left>REAL PROPERTY (1)<BR></TD></TR>
<TR class=odd>
<TD class=year align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e14"></TD>
<TD class="quarter style1 hide" align=middle spry$$ID="undefined"></TD>
<TD class="monTD style1 hide" align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e15">November</TD><!-- <td>TRINIDAD AND TOBAGO</td> -->
<TD class="currency style1" align=left>United States Dollar(1)<BR></TD>
<TD class="country style1" align=left>TRINIDAD AND TOBAGO(5)<BR></TD>
<TD class="type style1" align=left>MUTUAL FUND (2)<BR></TD></TR>
<TR class=odd>
<TD class=year align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e16"></TD>
<TD class="quarter style1 hide" align=middle spry$$ID="undefined"></TD>
<TD class="monTD style1 hide" align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e17">December</TD><!-- <td>TRINIDAD AND TOBAGO</td> -->
<TD class="currency style1" align=left>Trinidad and Tobago Dollar(4)<BR></TD>
<TD class="country style1" align=left></TD>
<TD class="type style1" align=left>FIXED INCOME (1)<BR></TD></TR>
<TR class=even>
<TD class=year align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e18">2002</TD>
<TD class="quarter style1 hide" align=middle spry$$ID="undefined">3</TD>
<TD class="monTD style1 hide" align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e19">August</TD><!-- <td>TRINIDAD AND TOBAGO</td> -->
<TD class="currency style1" align=left></TD>
<TD class="country style1" align=left></TD>
<TD class="type style1" align=left>REAL PROPERTY (1)<BR></TD></TR>
<TR class=odd>
<TD class=year align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e20">2003</TD>
<TD class="quarter style1 hide" align=middle spry$$ID="undefined">1</TD>
<TD class="monTD style1 hide" align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e21">February</TD><!-- <td>JAMAICA</td> -->
<TD class="currency style1" align=left>United States Dollar(2)<BR></TD>
<TD class="country style1" align=left>JAMAICA(1)<BR></TD>
<TD class="type style1" align=left>OTDER (1)<BR></TD></TR>
<TR class=odd>
<TD class=year align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e22"></TD>
<TD class="quarter style1 hide" align=middle spry$$ID="undefined">2</TD>
<TD class="monTD style1 hide" align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e23">May</TD><!-- <td>TRINIDAD AND TOBAGO</td> -->
<TD class="currency style1" align=left>Trinidad and Tobago Dollar(5)<BR></TD>
<TD class="country style1" align=left>TRINIDAD AND TOBAGO(1)<BR></TD>
<TD class="type style1" align=left>Mutual Fund (1)<BR></TD></TR>
<TR class=even>
<TD class=year align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e24">2004</TD>
<TD class="quarter style1 hide" align=middle spry$$ID="undefined"></TD>
<TD class="monTD style1 hide" align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e25">June</TD><!-- <td>TRINIDAD AND TOBAGO</td> -->
<TD class="currency style1" align=left>United States Dollar(3)<BR></TD>
<TD class="country style1" align=left></TD>
<TD class="type style1" align=left>OTDER (2)<BR></TD></TR>
<TR class=even>
<TD class=year align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e26"></TD>
<TD class="quarter style1 hide" align=middle spry$$ID="undefined">3</TD>
<TD class="monTD style1 hide" align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e27">August</TD><!-- <td>CANADA</td> -->
<TD class="currency style1" align=left>Trinidad and Tobago Dollar(14)<BR></TD>
<TD class="country style1" align=left>CANADA(10)<BR></TD>
<TD class="type style1" align=left>MUTUAL FUND (2)<BR></TD></TR>
<TR class=even>
<TD class=year align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e28"></TD>
<TD class="quarter style1 hide" align=middle spry$$ID="undefined"></TD>
<TD class="monTD style1 hide" align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e29"></TD><!-- <td>CANADA</td> -->
<TD class="currency style1" align=left></TD>
<TD class="country style1" align=left></TD>
<TD class="type style1" align=left>CORPORATE FUND (9)<BR></TD></TR>
<TR class=odd>
<TD class=year align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e30">2005</TD>
<TD class="quarter style1 hide" align=middle spry$$ID="undefined">2</TD>
<TD class="monTD style1 hide" align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e31">April</TD><!-- <td>JAMAICA</td> -->
<TD class="currency style1" align=left>United States Dollar(10)<BR></TD>
<TD class="country style1" align=left>JAMAICA(4)<BR></TD>
<TD class="type style1" align=left>OTDER (3)<BR></TD></TR>
<TR class=odd>
<TD class=year align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e32"></TD>
<TD class="quarter style1 hide" align=middle spry$$ID="undefined"></TD>
<TD class="monTD style1 hide" align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e33"></TD><!-- <td>JAMAICA</td> -->
<TD class="currency style1" align=left></TD>
<TD class="country style1" align=left></TD>
<TD class="type style1" align=left>GROWTD/EQUITY (1)<BR></TD></TR>
<TR class=odd>
<TD class=year align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e34"></TD>
<TD class="quarter style1 hide" align=middle spry$$ID="undefined">3</TD>
<TD class="monTD style1 hide" align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e35">August</TD><!-- <td>CANADA</td> -->
<TD class="currency style1" align=left>Trinidad and Tobago Dollar(9)<BR></TD>
<TD class="country style1" align=left>CANADA(1)<BR></TD>
<TD class="type style1" align=left>MUTUAL FUND (3)<BR></TD></TR>
<TR class=even>
<TD class=year align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e36">2006</TD>
<TD class="quarter style1 hide" align=middle spry$$ID="undefined">4</TD>
<TD class="monTD style1 hide" align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e37">November</TD><!-- <td>AUSTRALIA</td> -->
<TD class="currency style1" align=left>Australian Dollar(1)<BR></TD>
<TD class="country style1" align=left>AUSTRALIA(1)<BR></TD>
<TD class="type style1" align=left>OTDER (1)<BR></TD></TR>
<TR class=even>
<TD class=year align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e38"></TD>
<TD class="quarter style1 hide" align=middle spry$$ID="undefined"></TD>
<TD class="monTD style1 hide" align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e39"></TD><!-- <td>BARBADOS</td> -->
<TD class="currency style1" align=left>Barbados Dollar(2)<BR></TD>
<TD class="country style1" align=left>BARBADOS(2)<BR></TD>
<TD class="type style1" align=left>MUTUAL FUND (1)<BR></TD></TR>
<TR class=even>
<TD class=year align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e40"></TD>
<TD class="quarter style1 hide" align=middle spry$$ID="undefined"></TD>
<TD class="monTD style1 hide" align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e41"></TD><!-- <td>BARBADOS</td> -->
<TD class="currency style1" align=left></TD>
<TD class="country style1" align=left></TD>
<TD class="type style1" align=left>GROWTD/EQUITY (2)<BR></TD></TR>
<TR class=odd>
<TD class=year align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e42">2007</TD>
<TD class="quarter style1 hide" align=middle spry$$ID="undefined">2</TD>
<TD class="monTD style1 hide" align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e43">April</TD><!-- <td>TRINIDAD AND TOBAGO</td> -->
<TD class="currency style1" align=left>United States Dollar(11)<BR></TD>
<TD class="country style1" align=left>TRINIDAD AND TOBAGO(6)<BR></TD>
<TD class="type style1" align=left>MUTUAL FUND (2)<BR></TD></TR>
<TR class=odd>
<TD class=year align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e44"></TD>
<TD class="quarter style1 hide" align=middle spry$$ID="undefined">4</TD>
<TD class="monTD style1 hide" align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e45">November</TD><!-- <td>CANADA</td> -->
<TD class="currency style1" align=left>Trinidad and Tobago Dollar(4)<BR></TD>
<TD class="country style1" align=left>CANADA(1)<BR></TD>
<TD class="type style1" align=left>CORPORATE FUND (1)<BR></TD></TR>
<TR class=odd>
<TD class=year align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e46"></TD>
<TD class="quarter style1 hide" align=middle spry$$ID="undefined"></TD>
<TD class="monTD style1 hide" align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e47"></TD><!-- <td>SAINT LUCIA</td> -->
<TD class="currency style1" align=left>United States Dollar(11)<BR></TD>
<TD class="country style1" align=left>SAINT LUCIA(1)<BR></TD>
<TD class="type style1" align=left>BOND FUND (1)<BR></TD></TR>
<TR class=odd>
<TD class=year align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e48"></TD>
<TD class="quarter style1 hide" align=middle spry$$ID="undefined"></TD>
<TD class="monTD style1 hide" align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e49"></TD><!-- <td>LUXEMBOURG</td> -->
<TD class="currency style1" align=left></TD>
<TD class="country style1" align=left>LUXEMBOURG(1)<BR></TD>
<TD class="type style1" align=left>OTDER (1)<BR></TD></TR>
<TR class=odd>
<TD class=year align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e50"></TD>
<TD class="quarter style1 hide" align=middle spry$$ID="undefined"></TD>
<TD class="monTD style1 hide" align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e51">December</TD><!-- <td>TRINIDAD AND TOBAGO</td> -->
<TD class="currency style1" align=left></TD>
<TD class="country style1" align=left>TRINIDAD AND TOBAGO(6)<BR></TD>
<TD class="type style1" align=left>FIXED INCOME (1)<BR></TD></TR>
<TR class=odd>
<TD class=year align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e52"></TD>
<TD class="quarter style1 hide" align=middle spry$$ID="undefined"></TD>
<TD class="monTD style1 hide" align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e53"></TD><!-- <td>TRINIDAD AND TOBAGO</td> -->
<TD class="currency style1" align=left>European Union Euros(1)<BR></TD>
<TD class="country style1" align=left></TD>
<TD class="type style1" align=left>GROWTD/EQUITY (3)<BR></TD></TR>
<TR class=even>
<TD class=year align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e54">2008</TD>
<TD class="quarter style1 hide" align=middle spry$$ID="undefined">2</TD>
<TD class="monTD style1 hide" align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e55">April</TD><!-- <td>TRINIDAD AND TOBAGO</td> -->
<TD class="currency style1" align=left>United States Dollar(4)<BR></TD>
<TD class="country style1" align=left></TD>
<TD class="type style1" align=left>MUTUAL FUND (1)<BR></TD></TR>
<TR class=even>
<TD class=year align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e56"></TD>
<TD class="quarter style1 hide" align=middle spry$$ID="undefined"></TD>
<TD class="monTD style1 hide" align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e57">June</TD><!-- <td>CANADA</td> -->
<TD class="currency style1" align=left></TD>
<TD class="country style1" align=left>CANADA(2)<BR></TD>
<TD class="type style1" align=left>REAL PROPERTY (1)<BR></TD></TR>
<TR class=even>
<TD class=year align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e58"></TD>
<TD class="quarter style1 hide" align=middle spry$$ID="undefined"></TD>
<TD class="monTD style1 hide" align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e59"></TD><!-- <td>CANADA</td> -->
<TD class="currency style1" align=left></TD>
<TD class="country style1" align=left></TD>
<TD class="type style1" align=left>GROWTD/EQUITY (3)<BR></TD></TR>
<TR class=even>
<TD class=year align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e60"></TD>
<TD class="quarter style1 hide" align=middle spry$$ID="undefined">3</TD>
<TD class="monTD style1 hide" align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e61">September</TD><!-- <td>TRINIDAD AND TOBAGO</td> -->
<TD class="currency style1" align=left>Trinidad and Tobago Dollar(3)<BR></TD>
<TD class="country style1" align=left>TRINIDAD AND TOBAGO(5)<BR></TD>
<TD class="type style1" align=left>FIXED INCOME (2)<BR></TD></TR>
<TR class=odd>
<TD class=year align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e62">2009</TD>
<TD class="quarter style1 hide" align=middle spry$$ID="undefined">1</TD>
<TD class="monTD style1 hide" align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e63">February</TD><!-- <td>GIBRALTAR</td> -->
<TD class="currency style1" align=left>United States Dollar(1)<BR></TD>
<TD class="country style1" align=left>GIBRALTAR(1)<BR></TD>
<TD class="type style1" align=left>MUTUAL FUND (1)<BR></TD></TR>
<TR class=odd>
<TD class=year align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e64"></TD>
<TD class="quarter style1 hide" align=middle spry$$ID="undefined">3</TD>
<TD class="monTD style1 hide" align=left spry$$uid="1" spry$$ID="undefined" spryEventListenerID="e65">August</TD><!-- <td>TRINIDAD AND TOBAGO</td> -->
<TD class="currency style1" align=left>European Union Euros(1)<BR></TD>
<TD class="country style1" align=left>TRINIDAD AND TOBAGO(1)<BR></TD>
<TD class="type style1" align=left>FIXED INCOME (1)<BR></TD></TR></TBODY></TABLE>
User avatar
kendall
Forum Regular
Posts: 852
Joined: Tue Jul 30, 2002 10:21 am
Location: Trinidad, West Indies
Contact:

[SOLVED]Re: strip tag based on attribute

Post by kendall »

$reg = '@<td[^>]+?class=".*?hide"[^>]+>.*?</td>@i';
works :D :wink:
User avatar
ridgerunner
Forum Contributor
Posts: 214
Joined: Sun Jul 05, 2009 10:39 pm
Location: SLC, UT

Re: strip tag based on attribute

Post by ridgerunner »

kendall wrote:
$reg = '@<td[^>]+?class=".*?hide"[^>]+>.*?</td>@i';
works :D :wink:
Actually that regex has some problems and you are just plain lucky that it actually worked for your test data. (Of course if that was the only file you needed to process, then please disregard the following.)

First, your data has a mix of tag attributes; some are in double quotes, some aren't. Your regex will only find those which are quoted. If your data contained a non-quoted "hide" class attribute, then the regex would fail to match the following:

Code: Select all

<TD class=hide align=middle spry$$ID="undefined">1</TD>
Second, this regex depends upon "hide" being the last class in the attribute string. If hide is not the last class, then the regex fails to match this:

Code: Select all

<TD class="quarter hide style1" align=middle spry$$ID="undefined">1</TD>
Third, this regex depends upon <TD> tags being on one line. If the tag has a line break anywhere before the closing tag (such as in the data), the regex fails to match this:

Code: Select all

<TD class="quarter style1 hide" align=middle spry$$ID="undefined">
1 DATA WITH LINEFEED
</TD>
 
Fourth, if the closing angle bracket immediately follows the "hide" attribute, the regex fails to match:

Code: Select all

<TD class="hide">1</TD>
Fifth, (and this one is kind of subtle), the regex depends upon the fact that each TD tag appears on a single line. If two TD tags appear on a single line, and the first one has a quoted class without "hide", but the second one does, then the regex would match both and erroneously delete the first one like so:

Code: Select all

<TD class="class1">I get deleted!</TD><TD class="quarter style1 hide" align=middle spry$$ID="undefined">1</TD>
Here is an improved regex which fixes the problems noted above.

Code: Select all

$text = preg_replace('%<td[^>]+?class\s*=\s*(?:hide\b|"[^"]*?\bhide\b[^"]*")[^>]*>.*?</td>%si', '', $text);
Note that this regex has the s=single line "dot-matches-newline" modifier turned on. Also, this regex does not handle TD tags which contain nested tables.
User avatar
kendall
Forum Regular
Posts: 852
Joined: Tue Jul 30, 2002 10:21 am
Location: Trinidad, West Indies
Contact:

Re: strip tag based on attribute

Post by kendall »

WOW 8O
didnt even know this was the case. FORTUNATELY for me I am in control of the table output and the setting of the "hide" class. Thanks for this though as I will use it jess to be SAFE... :drunk: :wink:
Post Reply