這是我的工作。
創建一個新的ASP文件在JScript中編碼(不在VBScript中),調用它urlEncodeUTF8。ASP:
<%@ Language="JScript" %>
<%
Response.CharSet="UTF-8"
Response.Write(encodeURIComponent(Request("s")))
%>
在你的主ASP文件編寫代碼:
FUNCTION URLEncodeUTF8(ByVal str)
URLEncodeUTF8 = ""
On Error Resume NEXT
Err.Clear
postStr = "s=" & Server.URLEncode(str)
sURL = "http://" & Request.ServerVariables("SERVER_NAME") & "/urlEncodeUTF8.asp"
SET xmlHTTPObj = CreateObject("MSXML2.ServerXMLHTTP")
WITH xmlHTTPObj
.SetTimeouts 2000, 2000, 2000, 5000
.Open "POST", sURL, false
.SetRequestHeader "Content-Type", "application/x-www-form-urlencoded; charset=utf-8"
.SetRequestHeader "Content-Length", Len(postStr)
.Send postStr
xmlHttpResponse = .responseText
IF Err.number=0 AND .Status=200 THEN
URLEncodeUTF8 = xmlHttpResponse
END IF
END WITH
SET xmlHTTPObj = NOTHING
On Error Goto 0
END FUNCTION
現在你可以用urlencode使用上述功能,您的字符串:
Response.Write(URLEncodeUTF8("é"))
在這種情況下,結果將是:
%C3%A9
+1優秀的答案。 – Tomalak 2011-06-28 15:55:10