程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> ASP編程 >> 關於ASP編程 >> ASP中進行HTML數據及JS數據編碼

ASP中進行HTML數據及JS數據編碼

編輯:關於ASP編程

       在有些時候我們無法控制亂碼的出現, 比如發送郵件的時候有些郵件顯示亂碼, 比如Ajax返回數據總是亂碼. 怎麼辦? 前些天我就碰到了用Ajax提交表單, 然後發送郵件的情況. 於是寫出了下面的兩個函數來解決這兩個問題.

      第一個函數把HTML中的數據轉成HTML實體, 而HTML標簽則自動不轉, 這樣無論到哪裡都不會亂碼, 可以在發送郵件時選擇發送HTML格式的郵件.

      第二個函數把JS數據同樣是換成轉義字符, 同樣避開了JS關鍵詞等字符的轉換, 不管網頁是什麼編碼它都不會亂碼. 廢話少說, 看下面的代碼.

      Function htmlentities(str)

      Dim a,i,char

      For i = 1 to Len(str)

      char = mid(str, i, 1)

      a=Ascw(char)

      If a > 128 Or a < 0 then

      htmlentities = htmlentities & “&#” & clng(”&h” & hex((Ascw(char)))) & “;”

      Else

      htmlentities = htmlentities & char

      End if

      Next

      End Function

      Function Unicode(str1)

      Dim str,temp

      str = “”

      For i=1 To Len(str1)

      temp = Hex(AscW(Mid(str1,i,1)))

      If len(temp) < 5 Then temp = Right(”0000″ & temp, 4)

      str = str & “u” & temp

      Next

      Unicode = str

      End Function

      如果你是抱著拿著就用的態度那麼可以什麼也不管直接用, 當然很多時候我們為了滿足特殊情況的需要, 會改寫一些代碼, 如果你報著學習與研究的態度, 那麼這裡需要注意的是 Ascw(char) 函數有可能返回長整型值, 而ASP把它當成整型看待, 需要做些小的處理.

    1. 上一頁:
    2. 下一頁:
    Copyright © 程式師世界 All Rights Reserved