---
title: "Tvärt om!"
type: "forum-thread"
url: "https://www.webforum.nu/amne/javascript/130485-tvärt-om"
topic: "JavaScript"
topic_url: "https://www.webforum.nu/amne/javascript"
author: "obbin"
published: "2005-06-23T16:37:44.000Z"
updated: "2005-06-28T08:41:49.000Z"
replies: 8
views: 256
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/javascript/130485-tvärt-om"
---

# Tvärt om!

## #1 — obbin, 2005-06-23T16:37Z

Finns det något sätt att vända på detta scriptet, d.v.s att man översätter "%" tecken till vanliga ist. för tvärt om?

\<script type="text/javascript"\>
String.prototype.eescape = function(){
	var escaped="";
	for(var n=0;n\<this.length;n++){ escaped+="%"+((this.charCodeAt(n)\<16)?"0"+this.charCodeAt(n).toString(16):this.charCodeAt(n).toString(16)); }
	return escaped;
}

function makemaillink(str){
	return ""+str.eescape()+"";
}
\</script\>
\<form\>
\<table\>
	\<tr\>\<td\>Dinatecken att översätta till "kodad form":\</td\>\<td\>\<input type="text" name="email" style="width:200px;"/\>\</td\>\</tr\>
	\<tr\>\<td\>&nbsp;\</td\>\<td\>\<input type="button" value="Generera" onclick="this.form.eescaped.value=makemaillink(this.form.email.value);"/\>\</td\>\</tr\>
	\<tr\>\<td\>Resultat:\</td\>\<td\>\<input type="text" name="eescaped" style="width:600px;"/\>\</td\>\</tr\>
\</table\>
\</form\>

Tack på förhand!

Permalänk: https://www.webforum.nu/p/130485

## #2 — Guffa, 2005-06-23T17:49Z

Använd funktionen unescape.

Permalänk: https://www.webforum.nu/p/1633555

## #3 — obbin, 2005-06-23T17:51Z

Jag är inte så haj på javascript kan du förklara lite mer/skriva kod?
det vore jätteschyst!

Permalänk: https://www.webforum.nu/p/1633557

## #4 — Guffa, 2005-06-23T18:52Z

Det är en helt vanlig funktion:

```
var kodad_sträng = "%48%65%6A%31";
var avkodad_sträng = unescape(kodad_sträng);
```

Edit:
Städade lite i koden:

```
<script type="text/javascript">

String.prototype.eescape = function() {
	var escaped = '';
	for(var n=0; n<this.length; n++) {
		escaped += "%" + (this.charCodeAt(n) < 16 ? '0' : '') + this.charCodeAt(n).toString(16);
	}
	return escaped;
}

function makemaillink(str){
	return str.eescape();
}

</script>
```

Permalänk: https://www.webforum.nu/p/1633576

## #5 — nitro2k01, 2005-06-24T11:32Z

Men det var ju kanske onödigt att skriva en egen escape-funktion... DCet finns ju en inbyggd i javascript: T ex 

```
alert(escape("åäö"))
```

Permalänk: https://www.webforum.nu/p/1636760

## #6 — Guffa, 2005-06-25T02:24Z

> **nitro2k01 skrev:**
>
> Men det var ju kanske onödigt att skriva en egen escape-funktion...

Inte ifall man vill att alla tecken ska kodas. Funktionen escape kodar bara vissa tecken.

Permalänk: https://www.webforum.nu/p/1636857

## #7 — obbin, 2005-06-26T13:17Z

Html-stylen då?

Hur "unescapar" man "htmlbosktäver" ex. #&115;??

Permalänk: https://www.webforum.nu/p/1637148

## #8 — Guffa, 2005-06-27T01:13Z

Gör ett regular expression som matchar koden, och gör en ersättning som anropar en funktion för varje ersättning. Gör funktionen så att den tar emot koden och returnerar tecknet.

Permalänk: https://www.webforum.nu/p/1637331

## #9 — obbin, 2005-06-28T08:41Z

hur gör man en såda funktion då, är inte helt 100 på javascript och forms

Permalänk: https://www.webforum.nu/p/1637694

---

Tråden på webben: https://www.webforum.nu/amne/javascript/130485-tvärt-om
