我正在使用jQuery來輪詢XML文件以進行更改。處理不完整的XML文件
每隔一段時間,XML文件都是不完整的(服務器只是部分寫出來)。不幸的是,jQuery似乎繼續進行,就好像XML是好的,這意味着我的代碼錯誤,當它試圖找到不存在的屬性/標籤。
從jQuery返回時,如何判斷XML文件是否完整?
我正在使用jQuery來輪詢XML文件以進行更改。處理不完整的XML文件
每隔一段時間,XML文件都是不完整的(服務器只是部分寫出來)。不幸的是,jQuery似乎繼續進行,就好像XML是好的,這意味着我的代碼錯誤,當它試圖找到不存在的屬性/標籤。
從jQuery返回時,如何判斷XML文件是否完整?
有關檢查格式良好的XML的jQuery論壇here的討論。評論似乎表明目前沒有可靠的方法可用。
你可以使用try/catch塊或寫一些代碼來檢測嘗試分析它之前檢查XML?
我不確定你在看什麼是如何使用jQuery檢查一個有效的XML。
如果是,我創建了一個簡單的函數,利用jQuery的parseXML
:
function validXML(xml) {
try {
var xmlDoc = $.parseXML(xml);
return true;
} catch (e) {
return false;
}
}
var correctXML = "<rss version='2.0'><channel><title>RSS Title</title></channel></rss>";
var incorrectXML = "<rss version='2.0'><channel><title>RSS Title</title></rss>"; // missing </channel>
console.log(validXML(correctXML));
console.log(validXML(incorrectXML));
你是什麼意思「從jQuery的返回時」?你真的在做什麼? –
字面上''.get()'然後各種xmly東西像'$(xml).each(function(){});' – Chris
這還不夠。讓我們看看一個測試用例! –