提取url参数后删除空格

时间:2013-07-10 19:24:14

标签: javascript html regex

我正在尝试使用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

如何使用代码中的上述正则表达式来避免空格。

1 个答案:

答案 0 :(得分:2)

如果您不想显示网址编码(%20),可以使用unescape()功能。

var first = unescape(first);

我建议使用更好的变量名,但只要在遇到%20出现问题的地方使用它,它就会将它转换为普通空间