用空格替换+

时间:2016-05-15 13:40:45

标签: javascript html regex

我正在尝试根据通过GET设置的URL中的变量在div中设置文本。我只能这样做,因为这是一个JavaScript分配所以没有服务器。正如URL所做的那样,字符串中的空格已被+替换。

str.replace("+"," ")绝对没有。我在这个网站上发现了一些使用简单/+/g的其他链接,但在我的代码中,它使我的整个输出消失。

初始实施(已经用电子邮件空间替换%20): http://imgur.com/TaJo6SA

使用str.replace代码: http://imgur.com/RgmcjnF

这是代码(在css技巧中找到的函数):

function getQueryVariable(variable){
        var query = window.location.search.substring(1);
        var vars = query.split("&");
        for (var i=0;i<vars.length;i++) {
        var pair = vars[i].split("=");
        if(pair[0] == variable){return pair[1];}
        }
        return(false);
   }

    str = getQueryVariable("address");
    var address = address.replace(/+/g," ");
    document.getElementById('address').innerHTML = "Your postal address: " + address;

1 个答案:

答案 0 :(得分:0)

我修改你的功能:

function getQueryVariable(variable){
        var query = window.location.search.substring(1);
        var vars = query.split("&");
        for (var i=0;i<vars.length;i++) {
          var pair = vars[i].split("=");
          if(pair[0] == variable){
            return decodeURIComponent(pair[1].replace(/\+/g, '%20'));
          }
        }
        return(false);
   }

现在它返回已解析的数据(没有任何urldecoded部分)。