解决 JS encodeURI 和 ASP Server.URLEncode 之间的中断
Resolve breaks between JS encodeURI and ASP Server.URLEncode
直到现在我还愚蠢地认为 JavaScript 的 encodeURI()
会产生与 ASP 经典的 Server.URLEncode()
相同的结果。这是一个失败的例子:
encodeURI("戦艦帝国") = "%E6%88%A6%E8%89%A6%E5%B8%9D%E5%9B%BD"
Server.URLEncode("戦艦帝国") = "%C6%88%A6%C8%89%A6%C5%B8%9D%C5%9B%BD"
由于我在一个使用两种语言的系统中,是否有一种编码方法可以保证产生与另一种方法相同的编码?
(注意:Server.UrlEncode(str)
应该等同于 HttpUtility.UrlEncode(str, Response.ContentEncoding)
)
这对我有用,但一定要使用 UTF-8 保存
<%Response.charset="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
</head>
<body>
<%=Server.UrlEncode("戦艦帝国")%>
<br />
<script>document.write(encodeURI("戦艦帝国"))</script>
</body>
</html>
直到现在我还愚蠢地认为 JavaScript 的 encodeURI()
会产生与 ASP 经典的 Server.URLEncode()
相同的结果。这是一个失败的例子:
encodeURI("戦艦帝国") = "%E6%88%A6%E8%89%A6%E5%B8%9D%E5%9B%BD"
Server.URLEncode("戦艦帝国") = "%C6%88%A6%C8%89%A6%C5%B8%9D%C5%9B%BD"
由于我在一个使用两种语言的系统中,是否有一种编码方法可以保证产生与另一种方法相同的编码?
(注意:Server.UrlEncode(str)
应该等同于 HttpUtility.UrlEncode(str, Response.ContentEncoding)
)
这对我有用,但一定要使用 UTF-8 保存
<%Response.charset="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
</head>
<body>
<%=Server.UrlEncode("戦艦帝国")%>
<br />
<script>document.write(encodeURI("戦艦帝国"))</script>
</body>
</html>