2011-07-13 72 views
1

我正在使用jQuery來輪詢XML文件以進行更改。處理不完整的XML文件

每隔一段時間,XML文件都是不完整的(服務器只是部分寫出來)。不幸的是,jQuery似乎繼續進行,就好像XML是好的,這意味着我的代碼錯誤,當它試圖找到不存在的屬性/標籤。

從jQuery返回時,如何判斷XML文件是否完整?

+0

你是什麼意思「從jQuery的返回時」?你真的在做什麼? –

+0

字面上''.get()'然後各種xmly東西像'$(xml).each(function(){});' – Chris

+0

這還不夠。讓我們看看一個測試用例! –

回答

1

有關檢查格式良好的XML的jQuery論壇here的討論。評論似乎表明目前沒有可靠的方法可用。

你可以使用try/catch塊或寫一些代碼來檢測嘗試分析它之前檢查XML?

0

我不確定你在看什麼是如何使用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));