我發送一個字符串從服務器到Firefox瀏覽器在下面的格式:的JavaScript/DOM,解析鍵/值字符串
"KEY:a1 VAL:123.45"
而這個字符串可以包含很多這樣的記錄。
這是我寫的代碼:
var e;
var reply = request.responseText;
var txt = "", tab, key = "", val = "";
var x = reply.getElementsByTagName("KEY:");
for(i = 0; i < x.length; i++)
{
txt = x[i].childNodes[0].nodeValue; // "KEY:%c%c VAL:%.2F"
tab = txt.split(":");
key = "table_" + tab[1].substring(0,1);
val = tab[2];
e = document.getElementById(key);
e.innerHTML = val;
e.style.display = "block";
}
val
顯示"KEY:a1 VAL:123.45"
,而不是在預期"123.45"
(當然還有key
變量也是錯誤的,不匹配的表格單元格,剛採摘的第一個桌子)。
我甚至不知道如何顯示key
和val
值(document.write()和alert()什麼也不做,我也沒有看到如何在Firefox中跟蹤這段代碼)。
歡迎任何想法,提示,更正或代碼示例,但請不要推薦使用任何庫,我想用少量代碼來完成。
編輯:從兩個評論,我明白,有兩種不同的方式來進行:無論是使用DOM對象和HTML標籤,或使用'字符串'。我寧願繼續使用上面的格式,所以請引導我使用'字符串'解決方案。謝謝!
'reply'不是一個DOM元素,它是一個字符串。字符串沒有'getElementsByTagName'方法,該字符串甚至不包含HTML。 – 2012-03-09 17:47:37
感謝您的信息。你能詳細說明我該怎麼做呢? (無論是創建'對象'和使用HTML標籤,或解析'字符串' - 後者有我的青睞) – Gil 2012-03-09 17:53:13
關鍵:不是標籤名稱和答覆不是對象 – Amberlamps 2012-03-09 17:12:47