HTML特殊字符不会被Javascript替换

HTML special characters does not replaced by Javascript

本文关键字:Javascript 替换 特殊字符 HTML      更新时间:2023-09-26

在HTML中输入字符串之前,我试图解码字符串中的一些特殊字符。但是,出于某种原因,它没有起作用。例如:

我的输入字符串是"ampere 13th''。"

在JS中,我用这个函数替换每个特殊字符:

htmlEntities: function(str) {
    return str.replace(/''/g, "\").replace("'", "'").replace(".", ".").replace("%", "%").replace("'"",""");
},

但是,当把它放到HTML中,它仍然看起来像:"安培13 ' '"。

我想用替换的特殊字符显示我的数据。

我做错了什么?

字符串中有一个反斜杠,它不被识别为''',而是一个转义序列。其他角色被完美地替换了。我已经编写了下面的函数,它相应地警告输出字符串:

 function test() {
        var str = "ampere 13th''.";
        alert(str.replace(/''/g, "&#92").replace("'", "'").replace(".", ".").replace("%", "%").replace("'"", """));
    }

它提醒我

ampere 13th'.

是正确的,除了替换'''字符。如果你想替换''',你可以进一步搜索如何替换Java脚本中的反斜杠字符。

如果输入字符串是这样的

var str = "ampere 13th'''.";

加上两个反斜杠,那么替换就会完美地发生,我的函数会提醒我

ampere 13th&#92'.