2013-11-22 2 views
2

Я пытаюсь разобрать следующий XML:Получить значение узла в XML с помощью JQuery

<AssetImageModel xmlns="http://schemas.datacontract.org/2004/07/ErgonFileService.Model" xmlns:i="http://www.w3.org/2001/XMLSchema-instance"> 
    <AssetId>00000000-0000-0000-0000-000000000000</AssetId> 
    <AssetImageId>b74af53a-91e6-83f5-26f9-e1719ad5fd05</AssetImageId> 
    <ImagePath i:nil="true"/> 
    <IsDeleted>false</IsDeleted> 
    <Modified>false</Modified> 
    <Version>0</Version> 
</AssetImageModel> 

Для того, чтобы восстановить, например, значение AssetImageId. Каким будет самый простой способ достичь этого, используя JS или jQuery?

ответ

8

Если у вас есть xml-текст, используйте $ .parseXML(), чтобы проанализировать его на объект xml, а затем найдите find(), чтобы найти элемент.

var text = '<AssetImageModel xmlns="http://schemas.datacontract.org/2004/07/ErgonFileService.Model" xmlns:i="http://www.w3.org/2001/XMLSchema-instance"><AssetId>00000000-0000-0000-0000-000000000000</AssetId><AssetImageId>b74af53a-91e6-83f5-26f9-e1719ad5fd05</AssetImageId><ImagePath i:nil="true"/><IsDeleted>false</IsDeleted><Modified>false</Modified><Version>0</Version></AssetImageModel>' 

var xml = $.parseXML(text); 
console.log($(xml).find('AssetImageId').text()) 

Демо: Fiddle

Если вы используете Ajax затем установите dataType: 'xml' так что вы можете получить анализируемый объект как данные в обработчике успеха

Demo: Fiddle

Смежные вопросы