|
@@ -18,7 +18,7 @@ unit htmlelements;
|
|
|
interface
|
|
|
|
|
|
uses
|
|
|
- Classes, SysUtils, DOM, HtmlDefs;
|
|
|
+ Classes, SysUtils, DOM, HtmlDefs, strutils;
|
|
|
|
|
|
type
|
|
|
|
|
@@ -135,22 +135,14 @@ implementation
|
|
|
|
|
|
function EscapeHTML ( const S : String ) : String;
|
|
|
begin
|
|
|
- Result := StringReplace(s, '&', '&', [rfReplaceAll]);
|
|
|
- Result := StringReplace(Result, '<', '<', [rfReplaceAll]);
|
|
|
- Result := StringReplace(Result, '>', '>', [rfReplaceAll]);
|
|
|
- Result := StringReplace(Result, '"', '"', [rfReplaceAll]);
|
|
|
- Result := StringReplace(Result, #39, ''', [rfReplaceAll]); // ' - ' does not work on ie :(
|
|
|
+ // ' does not work on all versions of ie, so do not use it.
|
|
|
+ Result := StringsReplace(s,['&','<','>','"',#39],['&','<','>','"','''],[rfReplaceAll]);
|
|
|
end;
|
|
|
|
|
|
function UnescapeHTML ( const S : String ) : String;
|
|
|
begin
|
|
|
- Result := StringReplace(s, '<', '<', [rfReplaceAll]);
|
|
|
- Result := StringReplace(Result, '>', '>', [rfReplaceAll]);
|
|
|
- Result := StringReplace(Result, '"', '"', [rfReplaceAll]);
|
|
|
- Result := StringReplace(Result, ''', #39, [rfReplaceAll]); // '
|
|
|
- Result := StringReplace(Result, ''', #39, [rfReplaceAll]); // '
|
|
|
- Result := StringReplace(Result, '&', '&', [rfReplaceAll]);
|
|
|
-end;
|
|
|
+ Result := StringsReplace(result,['&','<','>','"',''','''],['&','<','>','"',#39,#39],[rfReplaceAll]);
|
|
|
+end;
|
|
|
|
|
|
|
|
|
{ THtmlCustomElement }
|