<%@LANGUAGE="VBSCRIPT" CODEPAGE="950"%>
<%
Dim str
str="登入用戶名不能為空!"
if str<>"" then
response.Write "<script language=JavaScript>alert(""" & str & """);history.go(-1)</script>"
end if
%>
對不起,執行時都會出示亂碼,而不是中文字。(我的網頁採用utf-8編碼,並且在前端加上了Codepage指示詞)
經研究,這是沒有meta設定的關係。即使網頁最前端已有設定%@codepage=65001%,仍然沒用。有時,我的網頁結構特殊,不適合在找地方加上<meta>的設定時(如果可以直接加上meta設定,也可以解決這個問題),可以針對要alert之前,直接塞meta設定在前,這樣,顯示中文就會正常了!!修改如下:
<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<%
Dim strMeta
strMeta = "<meta http-equiv=""Content-Type"" content=""text/html; charset=utf-8"" />" '先把meta設定寫在變數strMeta中
str="登入用戶名不能為空!"
if str<>"" then
response.Write strMeta&"<script language=JavaScript>alert(""" & str & """);</script>" '直接加在java script之前,讓中文設定生效
end if
%>
就解決了
沒有留言:
張貼留言