ASP中進(jìn)行HTML數(shù)據(jù)及JS數(shù)據(jù)編碼函數(shù)
更新時(shí)間:2009年11月11日 19:11:51 作者:
在有些時(shí)候我們無(wú)法控制亂碼的出現(xiàn), 比如發(fā)送郵件的時(shí)候有些郵件顯示亂碼, 比如Ajax返回?cái)?shù)據(jù)總是亂碼. 怎么辦?
前些天我就碰到了用Ajax提交表單, 然后發(fā)送郵件的情況. 于是寫出了下面的兩個(gè)函數(shù)來(lái)解決這兩個(gè)問(wèn)題.
第一個(gè)函數(shù)把HTML中的數(shù)據(jù)轉(zhuǎn)成HTML實(shí)體, 而HTML標(biāo)簽則自動(dòng)不轉(zhuǎn), 這樣無(wú)論到哪里都不會(huì)亂碼, 可以在發(fā)送郵件時(shí)選擇發(fā)送HTML格式的郵件.
第二個(gè)函數(shù)把JS數(shù)據(jù)同樣是換成轉(zhuǎn)義字符, 同樣避開(kāi)了JS關(guān)鍵詞等字符的轉(zhuǎn)換, 不管網(wǎng)頁(yè)是什么編碼它都不會(huì)亂碼. 廢話少說(shuō), 看下面的代碼.
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
如果你是抱著拿著就用的態(tài)度那么可以什么也不管直接用, 當(dāng)然很多時(shí)候我們?yōu)榱藵M足特殊情況的需要, 會(huì)改寫一些代碼, 如果你報(bào)著學(xué)習(xí)與研究的態(tài)度, 那么這里需要注意的是 Ascw(char) 函數(shù)有可能返回長(zhǎng)整型值, 而ASP把它當(dāng)成整型看待, 需要做些小的處理.
第一個(gè)函數(shù)把HTML中的數(shù)據(jù)轉(zhuǎn)成HTML實(shí)體, 而HTML標(biāo)簽則自動(dòng)不轉(zhuǎn), 這樣無(wú)論到哪里都不會(huì)亂碼, 可以在發(fā)送郵件時(shí)選擇發(fā)送HTML格式的郵件.
第二個(gè)函數(shù)把JS數(shù)據(jù)同樣是換成轉(zhuǎn)義字符, 同樣避開(kāi)了JS關(guān)鍵詞等字符的轉(zhuǎn)換, 不管網(wǎng)頁(yè)是什么編碼它都不會(huì)亂碼. 廢話少說(shuō), 看下面的代碼.
復(fù)制代碼 代碼如下:
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
如果你是抱著拿著就用的態(tài)度那么可以什么也不管直接用, 當(dāng)然很多時(shí)候我們?yōu)榱藵M足特殊情況的需要, 會(huì)改寫一些代碼, 如果你報(bào)著學(xué)習(xí)與研究的態(tài)度, 那么這里需要注意的是 Ascw(char) 函數(shù)有可能返回長(zhǎng)整型值, 而ASP把它當(dāng)成整型看待, 需要做些小的處理.
相關(guān)文章
javascript面向?qū)ο笕筇卣髦^承實(shí)例詳解
這篇文章主要介紹了javascript面向?qū)ο笕筇卣髦^承,簡(jiǎn)單描述了繼承的概念、原理,并結(jié)合實(shí)例形式詳細(xì)分析了繼承的常見(jiàn)實(shí)現(xiàn)方法與操作注意事項(xiàng),需要的朋友可以參考下2019-07-07
利用momentJs做一個(gè)倒計(jì)時(shí)組件(實(shí)例代碼)
這篇文章主要介紹了利用momentJs做一個(gè)倒計(jì)時(shí)組件,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-12-12
JS 正則表達(dá)式驗(yàn)證密碼、郵箱格式的實(shí)例代碼
這篇文章主要介紹了JS 正則表達(dá)式驗(yàn)證密碼、郵箱格式的實(shí)例代碼,需要的朋友可以參考下2018-10-10
JavaScript數(shù)據(jù)結(jié)構(gòu)之二叉樹(shù)的刪除算法示例
這篇文章主要介紹了JavaScript數(shù)據(jù)結(jié)構(gòu)之二叉樹(shù)的刪除算法,簡(jiǎn)單分析了javascript刪除數(shù)據(jù)結(jié)構(gòu)中二叉樹(shù)節(jié)點(diǎn)時(shí)所遇到的各種情況與相關(guān)的處理原理與算法實(shí)現(xiàn)技巧,需要的朋友可以參考下2017-04-04
JS 進(jìn)度條效果實(shí)現(xiàn)代碼整理
進(jìn)度條效果實(shí)現(xiàn)代碼,有助于緩解頁(yè)面顯示慢的頁(yè)面,給用戶一個(gè)等待時(shí)間的效果2011-05-05
詳解用函數(shù)式編程對(duì)JavaScript進(jìn)行斷舍離
本篇文章主要介紹了用函數(shù)式編程對(duì)JavaScript進(jìn)行斷舍離,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-09-09
Javascript 生成無(wú)限下拉列表實(shí)現(xiàn)代碼
js生成無(wú)線下拉列表的實(shí)現(xiàn)代碼。2009-03-03

