我正在讀取html文件中的數據以加載到div中。我遇到的問題是,寫入HTML文件的程序轉換<br />
到<br />
Jquery - 將ascii字符轉換回HTML
所以當我執行
$('#items').load('/News/list.aspx');
它顯示<br />
爲我的網頁上一個字符串,而不是讀它作爲一個頁面打破。
我試圖將上述文件讀取到一個變量做<br />
上的字符串替換,但它似乎並沒有工作。
有什麼建議嗎?
我正在讀取html文件中的數據以加載到div中。我遇到的問題是,寫入HTML文件的程序轉換<br />
到<br />
Jquery - 將ascii字符轉換回HTML
所以當我執行
$('#items').load('/News/list.aspx');
它顯示<br />
爲我的網頁上一個字符串,而不是讀它作爲一個頁面打破。
我試圖將上述文件讀取到一個變量做<br />
上的字符串替換,但它似乎並沒有工作。
有什麼建議嗎?
如果可能的話,第一步是修改服務器端腳本,這樣HTML首先不會被編碼。
如果不成功,您可以使用ajax
方法首先將頁面的數據加載到字符串中。您當前使用的方法只是立即加載文本。
$.ajax({
type: 'GET',
url: '/News/list.aspx',
dataType: 'text',
success: function(response) {
response = response.replace(/</g, '<');
response = response.replace(/>/g, '>');
$('#items').html(response);
}
});
這裏我已經替換了個別的尖括號,它會將所有的東西都轉換回HTML。如果您只想要換行符而沒有別的,請用response = response.replace(/<br \/>/g, '<br />');
創建文本文件的程序是一個黑匣子......並且通常會在屁股上造成一種痛苦。你提出的ajax方法似乎只適用於它遇到的第一組< > ...所以它刪除文本文件中的第一個,但沒有其他人......瘋狂 – sdmiller 2010-05-12 15:30:15
@sdmiller:你說得對,'替換'只在使用字符串時替換一次。我已經編輯了使用正則表達式的答案,該正則表達式應該替換每一個出現的元素 – DisgruntledGoat 2010-05-12 16:56:11
是的..它花了我幾分鐘,但我知道了!感謝您的輸入..救了我頭痛我正在撞我的頭! ;) – sdmiller 2010-05-12 18:26:22
它是URL編碼<和>標記嗎?
你有沒有嘗試解碼字符串,你回來這樣的事情? :
http://plugins.jquery.com/project/URLEncode
HTH
編輯: 那不是URL編碼所以這是行不通的。
url編碼看起來像這樣:%3cbr%20%2F%3E – lunixbochs 2010-05-12 15:20:22
是的,我同意,但我已經回答之前的例子發佈。將更新我的激光。 – DannyLane 2010-05-12 15:33:21
替換這兩行代碼您嘗試用什麼替換標記? #items只是一個div元素嗎? – lunixbochs 2010-05-12 15:16:37
我試圖做.replace('< br/>','
') 是#items只是一個div元素。它只是不能取代。它不會以任何方式影響它。 – sdmiller 2010-05-12 15:22:20