Hallo Forumler,
'kurz'[1] mal in Javascript kodiert:
<html>
<head><title>Entity Generator</title>
<script>
function enc(t)
{
var s="";
for(var i=0;i<t.length;i++)
{
s+="&#"+t.charCodeAt(i)+ ";";
}
return s;
}
function dec(s)
{
var t="";
for(var i=0;i<s.length;i++)
{
var j=i;
if(s[j]=="&" && s[j+1]=="#")
{
j+=2;
var n="";
while(s[j]>="0"&& s[j]<="9")
n+=s[j++];
if(s[j]==";")
{
t+=String.fromCharCode(parseInt(n));
i=j;
continue;
}
else
t+=s[i];
}
else
t+=s[i];
}
return t;
}
function encf(f)
{
f.outp.value=enc(f.inp.value);
}
function decf(f)
{
f.inp.value=dec(f.outp.value);
}
</script>
</head>
<body>
<form>
Klartext: <input type=text name="inp" size=80><input type=submit value="Kodieren" onClick="encf(document.forms[0]); return false;"><br>
Als Entities: <input type=text name="outp" size=80><input type=submit value="Dekodieren" onClick="decf(document.forms[0]); return false;"><br>
</form>
</body>
</html>
Geht mit Mozilla und NN4.7, aber nicht mit Konqueror.
Gruss,
Carsten
[1] mit funktionierenden RegExp-en wären En- und Decoder je ein Einzeiler.