最近在处理一些文本编辑的功能,用到很多match或者replace方法,然后内容是markdown或者bbcode,输出为html之后会有一些内容匹配不到,打印之后发现是转义了,比如中文转义成(unicode;),这个问题还好解决了,现在被另外一个问题卡住了,连续的两个空格会被转义成(A0;)而单个空格不会。。
转义是模块内部定义好的,那为什么要这样做?因为我在javascript里面用字符串直接写html也没问题啊。。。
这种情况我该咋办呢?
最近在处理一些文本编辑的功能,用到很多match或者replace方法,然后内容是markdown或者bbcode,输出为html之后会有一些内容匹配不到,打印之后发现是转义了,比如中文转义成(unicode;),这个问题还好解决了,现在被另外一个问题卡住了,连续的两个空格会被转义成(A0;)而单个空格不会。。
转义是模块内部定义好的,那为什么要这样做?因为我在javascript里面用字符串直接写html也没问题啊。。。
这种情况我该咋办呢?
最常见的被转义的就是<>,因为一个是可能会影响到标签闭合,另外一个就是可能用户在输入时候插入脚本代码进行攻击,比如写一段js代码,然后那段文章就可能会自带小广告啥的。
不过没看懂你现在是想要做什么。
10 回答11.7k 阅读
2 回答3.2k 阅读✓ 已解决
4 回答2.2k 阅读✓ 已解决
3 回答1.2k 阅读✓ 已解决
3 回答868 阅读✓ 已解决
3 回答1k 阅读✓ 已解决
2 回答1.2k 阅读✓ 已解决
防止往网页里面注入js代码呀