如何在javascript中解码url编码的字符串

时间:2013-05-20 08:13:33

标签: javascript url-encoding

我使用javascript / jquery来填充包含变音符号的dom元素:

var text1 = "Unser platonisches Internetreich droht in die H%E4nde einer bewaffneten Miliz zu fallen."

$("#quote1 span").html(unescape(text1));

如何摆脱网址编码,例如“H%E4nde”并使用“Hände”代替?我试过了

<meta charset="utf-8" />

<meta name="http-equiv" content="Content-type: text/html; charset=UTF-8"/>

<script type="text/javascript" src="js/index.js" charset="utf-8"></script>

但他们似乎都没有工作......

感谢您的帮助。

2 个答案:

答案 0 :(得分:21)

这不是UTF-8,即percent encoding也称为url编码。

您可以使用decodeURIComponent()在显示之前将其转换回来

$("#quote1 span").html(decodeURIComponent(text1));

答案 1 :(得分:4)

使用以下内置JavaScript函数之一对任何编码的文本进行解码。不需要jquery或任何其他库。

const text1 = "Unser platonisches Internetreich droht in die H%E4nde einer bewaffneten Miliz zu fallen."

console.log(decodeURI(text1))

console.log(decodeURIComponent(text1))