用+替换了URL中的%20

时间:2015-02-26 16:22:15

标签: javascript jquery

我想知道每当我点击按钮将文本框值添加到网址时,就可以将%20替换为+。

$(function () {
    $('#btn').click(function() {
        var url = "www.urlname.com/results.html?value=";
        url += $('#textbox').val();
        window.location = url;
    });
});

由于

4 个答案:

答案 0 :(得分:2)

是否所有出现的正则表达式$('#textbox').val().replace(/%20/g, '+');

答案 1 :(得分:2)

我没有测试过,但这应该有效。您想要替换值中的空格。它们目前尚未编码到实体中。

$(function () {
    $('#btn').click(function() {
        var url = "www.urlname.com/results.html?value=";
        var textboxValue = $('#textbox').val();
        textboxValue = textboxValue.replace(/ /g, "+");
        url += textboxValue;
        window.location = url;
    });
});

答案 2 :(得分:0)

你试过这个吗?

$(function () {
    $('#btn').click(function() {
        var url = "www.urlname.com/results.html?value=";
        url += $('#textbox').val();
        window.location = url.replace(new RegExp(' ','g'),'+');
    });
});

答案 3 :(得分:0)

当您动态创建网址参数时,您不应使用临时替换来对其进行编码。 Javascript提供encodeURIComponent函数来执行所有必需的编码。所以你应该写:

url += encodeURIComponent($('#textbox').val());