我正在尝试使用Javascript / HTML提取url参数。
如果我不在参数之间给出任何空格,下面是代码,我已经及其工作正常。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
</head>
<body>
<script>
function getUrlVars() {
var vars = {};
var parts = window.location.href.replace(/[?&]+([^=&]+)=([^&]*)/gi, function(m,key,value) {
vars[key] = value;
});
return vars;
}
var first = getUrlVars()["id"];
alert(first);
</script>
</body>
</html>
但是只要我在参数之间给出空格,我总是得到%20。如何跳过空格。
假设以下是url -
/test.html?id=123 456
然后在警告框中我总是看到 -
123%20456
如何使用代码中的上述正则表达式来避免空格。
答案 0 :(得分:2)
如果您不想显示网址编码(%20),可以使用unescape()
功能。
var first = unescape(first);
我建议使用更好的变量名,但只要在遇到%20出现问题的地方使用它,它就会将它转换为普通空间