2012-09-21 72 views
1

我試圖將包含XML的字符串轉換爲可以在瀏覽器中顯示的內容。要做到這一點,我傳遞字符串以下功能:>在瀏覽器中顯示爲>而不是>

Function HTMLDecode(sText) 
    Dim regEx 
    Dim matches 
    Dim match 
    sText = Replace(sText, Chr(34), """) 
    sText = Replace(sText, Chr(60), "<") 
    sText = Replace(sText, Chr(62), ">") 
    sText = Replace(sText, Chr(38), "&") 
    sText = Replace(sText, Chr(32), " ") 


    Set regEx= New RegExp 

    With regEx 
    .Pattern = "&#(\d+);" 'Match html unicode escapes 
    .Global = True 
    End With 

    Set matches = regEx.Execute(sText) 

    'Iterate over matches 
    For Each match in matches 
     'For each unicode match, replace the whole match, with the ChrW of the digits. 

     sText = Replace(sText, match.Value, ChrW(match.SubMatches(0))) 
    Next 

    HTMLDecode = sText 
End Function 

然而,當我打電話,如下:

response.write HTMLDecode(strResponse) 

發生轉換,但是這是我在瀏覽器中看到:

<?xml version="1.0"? > 

而不是

<xml version="1.0"? > 

發生在IE瀏覽器,FF &鉻,所以我想它一定是我的代碼 - 任何想法?

+0

我不知道ASP,但真的需要重塑HTML用手逃避? – deceze

+0

感謝您的無用評論。經典的asp沒有什麼要做我想要的,所以這就是爲什麼我被迫「重塑HTML轉義」。 – williamsdb

回答

相關問題