到目前为止,我愚蠢地认为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)
)
答案 0 :(得分:1)
这对我有用,但一定要使用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>