都是转义惹的祸

在做一个跳转页面时出现一个bug,是引号引起的,原始代码基本如下:

<html>
<head>
<title>redirect</title>
<meta http-equiv="refresh" content="0; url=&#39;http://www.baidu.com/?\40abc&#39;">
</head>
<body bgcolor="#ffffff" text="#000000" link="#0000cc" vlink="#551a8b" alink="#ff0000">
<script type="text/javascript" language="javascript">
location.replace("http://www.baidu.com/?\40abc");
</script>
</body>
</html>

这里的蓝色的双引号没有影响url中反斜线的转义,可能是因为&#39;的缘故;如果写为:
<meta http-equiv="refresh" content=0; url=&#40;http://www.baidu.com/?\40abc&#40;>
发现是不行的

javascript中的红色的双引号使得里面的反斜线有了转移的作用,所以,这里的双引号要修改为单引号

留下评论

邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据