Murphy's World @ homeserver holyghost alias dyndns.murphys-world.de | |||||||||||||||||||||||||||||||||
| START
Projekt Murphy's CMSmini
JavaScript TIPPS & TRICKS
GeoCaching
NEWS
TERMINE
FUNSTUFF
LINKS
VIP-BEREICH
KONTAKT
IMPRESSUM
|
JavaScript Tipps & Tricks |
||||||||||||||||||||||||||||||||
| < | (Kleiner-Zeichen) | wird ersetzt durch | < | (less then) |
| > | (Größer-Zeichen) | wird ersetzt durch | > | (greater then) |
| & | (Kaufmanns-Und) | wird ersetzt durch | & | (ampersand) |
| " | (Doppelte Anführungszeichen) | wird ersetzt durch | " | (quotation mark) |
Die Funktion erwartet einen oder zwei Parameter. Der erste Parameter enthält den zu maskierenden String. Mit dem optionalen zweiten Parameter steuert man - wie in der originalen PHP-Funktion - die Maskierung von einfachen und doppelten Anführungszeichen. Dabei sind folgende Werte definiert:
| 0 | = Keine Anführungszeichen umwandeln |
| 1 | = Nur einfache Anführungszeichen umwandeln |
| 2 | = Nur doppelte Anführungszeichen umwandeln (Standardeinstellung) |
| 3 | = Beide Arten (einfache und doppelte Anführungszeichen) umwandeln |
Nachfolgend finden sich zwei Varianten der Funktion htmlspecialchars() für JavaScript bzw. JScript, welche in Bedienung und Ergebnis ihrem PHP Vorbild entsprechen. Beide führen Ersetzungen mit regulären Ausdrücken durch, haben aber ein leicht unterschiedliches Datenhandling.
Um auch weitere Zeichen wie z.B. deutsche Umlaute zu ersetzen, ist die Funktion htmlentities() vorgesehen.
string htmlspecialchars ( string str , [integer typ] )
| str | = der zu maskierende String |
| typ | = Art der Maskierung (optional) |
function htmlspecialchars(str,typ) {
if(typeof str=="undefined") str="";
if(typeof typ!="number") typ=2;
typ=Math.max(0,Math.min(3,parseInt(typ)));
var from=new Array(/&/g,/</g,/>/g);
var to=new Array("&","<",">");
if(typ==1 || typ==3) {from.push(/'/g); to.push("'");}
if(typ==2 || typ==3) {from.push(/"/g); to.push(""");}
for(var i in from) str=str.replace(from[i],to[i]);
return str;
}
function htmlspecialchars(str,typ) {
if(typeof str=="undefined") str="";
if(typeof typ!="number") typ=2;
typ=Math.max(0,Math.min(3,parseInt(typ)));
var html=new Array();
html[38]="amp"; html[60]="lt"; html[62]="gt";
if(typ==1 || typ==3) html[39]="#039";
if(typ==2 || typ==3) html[34]="quot";
for(var i in html)
eval("str=str.replace(/"+String.fromCharCode(i)+"/g,\"&"+html[i]+";\");");
return str;
}
<script type="text/javascript"> text = "<b>Hallo<br />Welt</b>"; chars = "< > & \" '"; document.writeln ( text + "<br />" + htmlspecialchars ( text ) ); alert ( htmlspecialchars ( chars, 0 ) + "\n" + htmlspecialchars ( chars, 1 ) + "\n" + htmlspecialchars ( chars, 2 ) + "\n" + htmlspecialchars ( chars, 3 ) ); </script>
Hallo Welt <b>Hallo<br />Welt</b> < > & " ' < > & " ' < > & " ' < > & " '
Das auf dieser Seite notierte Script htmlspecialchars() ist Public Domain.
Zurück zur JavaScript Funktionsübersicht
© 2026 Murphy's World Alle Rechte vorbehalten Impressum