【问题标题】:javascript string replace special charactersjavascript字符串替换特殊字符
【发布时间】:2016-09-27 00:14:06
【问题描述】:

我有一个函数,如果未选中复选框,则从 html 字符串中删除过滤器,如果选中,则添加它。我在使用字符串替换功能从要删除的字符串前面删除 %20 或 + 符号时遇到问题。

此代码有效:

var addFilter = change.value;

if (change.checked == true) { //add filter }
else {
    var removeFilter1 = addFilter;
    var removeFilter2 = addFilter;

        if(currFilter != '') {
            var url = currFilter.replace(removeFilter1, "");
            var url = url.replace(removeFilter2, "");
            window.open(url, "_self");
        }

}

...基本上我尝试设置 removeFilter1 = "%20" + addFilter;和 removeFilter2 = "+" + addFilter;摆脱 url 中多余的空格字符,但是当我进行更改时它不会做任何事情。我很确定它与不能使用特殊字符但不知道如何修复的替换功能有关。这并不是什么大不了的事,因为它仍然适用于包含的额外空间,但它困扰着我哈哈。

【问题讨论】:

    标签: javascript html string replace


    【解决方案1】:

    %20 基本上是空格,它在 url 中显示为 %20 表示空格,因为 url 不能有空格..所以你应该尝试从字符串中删除空格而不是 %20...例如

    var url = currFilter.replace(" ", "");
    

    【讨论】:

      【解决方案2】:

      你试过 decodeURI 和替换空格吗?

      问候

      【讨论】:

        猜你喜欢
        • 2011-05-31
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-09-21
        • 2021-11-17
        • 2015-03-17
        • 2014-12-07
        相关资源
        最近更新 更多